在Shell脚本中扩展变量的最简单方法



最简单的方法是在这样的脚本中强行扩展变量的最简单方法:

#!/bin/some
path=/nobackup/
sed -i "39s/.*/$path/" cluster.sh

或最简单的外壳脚本语言是什么只是没有问题扩展变量?有力量扩展选项吗?

变量扩展;问题在于该值包含sed视为语法的字符。sed看到命令

39s/.*//backup//

试图动态构建sed命令时的一个解决方案是提前了解该变量将包含的字符,并在sed命令中使用其他定界符。

sed -i "39s|.*|$path|" cluster.sh

另一个解决方案是,如果您可以控制$path的值,则是预删除问题字符。

path='/backup/'
sed -i "39s/.*/$path/" cluster.sh  # 39/.*//backup//

相关内容

  • 没有找到相关文章

最新更新