用引号作为sed命令的变量会产生错误

Lumify

我有这个脚本:

num='[0-9]'
sedcmd='-e "s/${num}/as df/g"'
echo 123 | sed -r $sedcmd

最后一行产生以下内容:

sed:-e表达式#1,字符1:未知命令:

我错过了什么?

伊尼安

不要使用变量来存储shell命令,而要使用数组。请参阅BashFAQ-50,我正在尝试将命令放入变量中,但是复杂的情况总是会失败。

您只需使用如下数组

num='[0-9]'
argArray=('-e' "s/${num}/as df/g")

并用双引号将数组扩展名括起来,以使单词不能通过分词来拆分,并称为

echo 123 | sed -r "${argArray[@]}"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

sed中单引号的反斜杠转义会产生错误

如何在sed命令中正确用双引号将变量引起来

在Robot Framework中将字典作为变量:代码可以正常运行,但IDE会产生错误

与函数中的变量连接会产生错误

使用变量作为.htaccess文件中的文件夹名称会产生500个内部服务器错误

如何在双引号中将变量作为命令参数?

在Qt Creator中将QLabel作为参数传递会产生错误

引号之间的sed命令

转换为Swift 5会产生“多个命令会产生x86_64.swiftmodule”错误

sed | 用包含双引号的环境变量替换值

用带引号的变量Unix KSH进行Sed替换

如何找出tcl命令会产生哪些错误?

在bash脚本中AWKing SSH命令会产生错误的输出

更改天数 uint 变量的函数会产生错误 - Solidity

使用变量会产生错误,但是使用直接值是正确的

用C ++排序时的地图会产生巨大的错误

用ctypes调用C库模块会产生错误的结果

使用typedef作为变量名不会产生任何错误

为什么在Python 3中四重引号会产生语法错误?

使用sed捕获的组变量作为bash命令的输入

用eval'$ cmd'执行变量将产生错误

CakePHP 3:执行控制台命令会产生“未知命令`cake hello”错误

为什么用sed替代我的单引号会消失

用sed插入单引号

将 useState 作为道具传递给变量会产生问题吗?

从组件访问Vuex存储中的变量会产生未知的变量类型错误

sed命令字符串变量在单引号内的串联

用sed命令和正则表达式替换包含引号的值

如何在没有附加引号的情况下将bash变量作为命令运行?