コンテンツをコピーした場合
httpd.conf
次にcatコマンドに貼り付けます。たとえば、次のようになります。
#!/bin/bash
cat > /test << EOF
pasted here..
EOF
次のエラーが発生します。
-bash: command substitution: line 1: unexpected EOF while looking for matching `''
-bash: command substitution: line 4: syntax error: unexpected end of file
おそらく、解決策はドル記号や引用符などを避けることです。
しかし、ファイルが大きすぎるため、ドル記号を自動的にエスケープできますか?
他のプログラムを介してエスケープしてからcatコマンドに提供する唯一のオプションはありますか?
ベストアンサー1
「EOF」文字列の周囲に引用符を使用します。
cat > /test <<'EOF'
stuff $(pwd)
EOF
出力
stuff $(pwd)
文字通り。
よりバッシュマニュアルこの記事に。終了文字列に引用符が含まれると、本文の拡張と置換が防止されます。