用sed替换文件中的所有路径字符串

时间:2014-07-08 19:34:36

标签: shell sed

我有一个包含吨和吨绝对路径字符串的xml文件(例如/home/matt/somefolder/somefile.c)。我想用相对地址(./somefile.c)替换它们。我的脚本看起来像这样,它似乎没有替换路径字符串

tmp=`pwd`
cat a.xml | sed 's/$tmp/.' > a.xml

1 个答案:

答案 0 :(得分:0)

这应该可以解决问题:

tmp=$(pwd)
sed "s#$tmp#.#" a.xml > a2.xml

请注意双引号以确保替换$tmp。由于路径包含斜线,因此最好在sed中使用不同的字符(在这种情况下为#)。