![Bash 스크립트에서 Vim 명령 실행](https://linux55.com/image/48014/Bash%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C%20Vim%20%EB%AA%85%EB%A0%B9%20%EC%8B%A4%ED%96%89.png)
예전에 질문드린 내용과 관련이 있는데 혹시 다른 분이 사용하실까봐 분리해서 올렸습니다.
아래와 같이 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