为什么这个bash脚本
ssh $SERVER bash <<EOF
sed -i "s/database_name: [^ ]*/database_name: kartable_$ME" $PARAM_FILE
exit
EOF
输出->
sed: -e expression #1, char 53: unterminated `s' command
为什么这个bash脚本
ssh $SERVER bash <<EOF
sed -i "s/database_name: [^ ]*/database_name: kartable_$ME" $PARAM_FILE
exit
EOF
输出->
sed: -e expression #1, char 53: unterminated `s' command
Answers:
中的s
命令sed
使用特定的语法:
s/AAAA/BBBB/options
where s
是替换命令,AAAA
是您要替换的正则表达式,BBBB
与您要替换的正则表达式相同,并且options
是替换命令的任何选项,例如global(g
)或忽略case(i
)。
在您的特定情况下,您错过了最后一个斜杠/
,如果添加它,sed
将可以正常工作:
➜ ~ sed 's/database_name: [^ ]*/database_name: kartable_$ME/'
database_name: something
database_name: kartable_$ME
info sed 'The "s" Command'
包括s命令的完整说明和用法。
/
不是g
,g
可能是不希望的,用于全局。