从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文件中运行此命令行命令?

可爱的香肠

好的,看起来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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章