ubuntu bash:sed:-e表达式#1,字符1:未知命令:复制品

xesrikrc  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(104)

此问题已在此处有答案

Setting an argument with bash [duplicate](2个答案)
上个月关门了。
我写了一个bash脚本:

username=$(whoami)
sedcmd="sudo sed -i 's/user  nginx/user  $username/' /etc/nginx/nginx.conf"
$($sedcmd)

当我运行这个脚本时,我得到一个错误:
sed:-e表达式#1,字符1:未知命令:`''
该脚本必须将我的名字插入到文件中的一行中。我使用了命令“sed”来实现这一点。
密码有什么问题?

cngwdvgl

cngwdvgl1#

空格被认为是传递给sed命令的参数的空格。尝试用“”来转义空格。

username=$(whoami)
sedcmd="sudo sed -i 's/user\ \ nginx/user\ \ $username/' /etc/nginx/nginx.conf"
$($sedcmd)

相关问题