这与我之前提出的一个问题有关,但是我想将其分开,以防其他人在其中找到用处。
我有一个命令正在命令行中的名为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文件中运行此命令行命令?
好的,看起来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
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句