当我打字时
grep -r string1 folder/ | cut -d ":" -f1 | sed -i -e 's/string1/string2/'
它说
sed: no imput files
但
grep -r string1 folder/ | cut -d ":" -f1
在 stdOut 中写入必须遵循的路径列表
sed -i -e 's/string1/string2/' [here]
这不是主题,但如果你知道如何修改sed
BEGIN 行,string1
这将对我有很大帮助
答案1
有很多方法可以优化这个问题,但解决当前问题的最简单方法是:
sed -i 's/^string1/string2/g' folder/*
string1
这将导致 sed 将行首为的实例替换为string2
中所有文件的字符串folder/
。