我想在bash脚本中执行此命令。
代码:
#!/bin/bash
line=39;
d=d; ## For delete line
`echo "sed '$line$d' /etc/passwd"`;
但是当我执行时,我得到了这个错误:
sed: -e expresion #1, character 1: unknow command <<'>>
我尝试了echo "sed \'$line$d\' /etc/passwd"
;
但是同样的问题...
您需要确保在调用变量时不会阻止single-quoting
它们的扩展。现在可以single-quotes
在内 使用了double-quotes
,但要注意。同样,尽管不是必需的,但当将两个变量背对背放置时,最好使用花括号来确保模棱两可。就是说,您sed
从脚本执行的命令可以正常运行:
sed -e "${line}${d}" /etc/passwd
它将输出/etc/passwd
到stdout
负行$line
。要/etc/passwd
就地编辑,请使用sed -i
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句