Bash 스크립트에서 Vim 명령 실행

Bash 스크립트에서 Vim 명령 실행

예전에 질문드린 내용과 관련이 있는데 혹시 다른 분이 사용하실까봐 분리해서 올렸습니다.

아래와 같이 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

관련 정보