用于替换具有" /"的字符串的Unix命令

时间:2018-03-24 01:27:33

标签: unix sed grep

我知道要替换一个字符串(在一个有matchstring字符串的文件中),我们可以使用以下命令
grep -rl matchstring somedir/ | xargs sed -i 's/string1/string2/g'
如果我的字符串有特殊字符,如" /"?如何使用/更改命令?
例如:
string1:" / home / folder1"
string2:" / home / folder1 / folder2"

1 个答案:

答案 0 :(得分:0)

正如@jamieguinan在他的命令中提到的,几乎可以使用任何分隔符。因此,我将命令更改为:grep -rl matchstring somedir/ | xargs sed -i 's,string1,string2,g'
其中string1和string2分别为:​​/ home / folder1和/ home / folder1 / folder2。