私は bash プロンプト経由で ssh 経由でシェル スクリプトを記述しようとしています。しかし、シェルは、直接ファイルに書き込むのではなく、記述したい変数を解釈しようとします。たとえば、はcat <<EOF >checkup.sh\n'$command'EOF
単に''
ファイルに と記述されます。代わりに記述するにはどうすればよいでしょうか$command
? 考えられるあらゆる実用的なエスケープ方法を試しました。
もし何かが変わったら、PHPを使ってphpseclib。
答え1
最初の部分を引用してみましょうEOF
。
cat <<'EOF'
>checkup.sh\n'$command'
EOF
これについては、bash(1) のマニュアルページの「Here Documents」セクションで説明されています。