尝试查找包含此文本“david_now”的所有文件并替换为此“david_old”
grep -r "david_now" | sed -i 's"david_now"david_old"g
'
它在某些文件上失败并停止示例:
sed no input files
BRF/Test_page.mujebr3.brf: binary file matches
尝试查找包含此文本“david_now”的所有文件并替换为此“david_old”
grep -r "david_now" | sed -i 's"david_now"david_old"g
'
它在某些文件上失败并停止示例:
sed no input files
BRF/Test_page.mujebr3.brf: binary file matches
您将 grep 的输出(文件列表)作为 sed 的输入传递。如果您希望 sed 实际操作这些文件,则需要使用该
xargs
命令,如下所示:这基本上可以工作,但如果您的文件名包含空格,则需要修改 grep 以在文件名之间使用 NUL 分隔符: