以前に質問した内容と関連がありますが、もしかしたら他の方が使うかと分けて上げました。
以下のように、dummy.outというファイルのコマンドラインから実行されるコマンドがあります。
vim -E -s dummy.out <<-EOF
:%s/old/new/g
:%s/old2/new2/g
:%s/old3/new3/g
:update
:quit
EOF
コマンドラインでは機能しますが、bashファイルbashscript.shに追加すると
#!/bin/bash
# bash script
var01="start script"
echo $var01
vim -E -s dummy.out <<-EOF
:%s/old/new/g
:%s/old2/new2/g
:%s/old3/new3/g
:update
:quit
EOF
次のエラーが発生します。
warning: here-document at line 7 delimited by end-of-file (wanted 'EOF')
このbashファイルでこのコマンドラインコマンドを実行するにはどうすればよいですか?
答え1
まあ、EOFは私が予想したよりもはるかに敏感なようです
これはうまくいきません
vim -E -s dummy.out <<-EOF
:%s/old/new/g
:%s/old2/new2/g
:%s/old3/new3/g
:update
:quit
EOF
これは実際に
vim -E -s dummy.out << EOF
:%s/old/new/g
:%s/old2/new2/g
:%s/old3/new3/g
:update
:quit
EOF