嘿伙计们。
我是新来的,请善待:)。是的,我遇到了一些问题...... 我正在写一些脚本,并始终使用我的文档文件夹的绝对路径。像这样的东西:
cd /home/myname/documents/blabla/
更多或更多,我想清理代码,将其提供给其他人并将其更改为:
VARIABLE="/home/myname/documents"
cd $VARIABLE/blabla
因为脚本中有超过9000个绝对路径,我自然会想到使用SED来“清理”我的脚本。这就是问题所在:
sed -ie "s|home/myname/documents|$VARIABLE|g" script1
这给了我空的空间。我想用字符串“$ VARIABLE”而不是变量本身来交换路径。试过一些东西,如引号,一些括号,但无法弄清楚它是如何工作的。
所以我向你申请。你可以帮帮我吗? 我真的可以睡一觉...... ^^
非常感谢,抱歉我的英语。一个n00bie。
答案 0 :(得分:3)
只需将"
更改为'
即可展开变量,但请按字面意思处理文字:
sed -ie 's|home/myname/documents|$VARIABLE|g' script1
编辑:也要注意初始的/
,这样你就不要错过你的正则表达式没有删除它。
答案 1 :(得分:0)
sed -ie "s#home/myname/documents#\$VARIABLE#g" script1
替代方案,逃避$