gpt4 book ai didi

linux - Find 和 xargs 以正确处理名称中包含空格的文件名

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:37:13 30 4
gpt4 key购买 nike

目前我使用下面的代码来搜索和替换当前文件夹下任何.php 文件中的字符串。

find . -name "*.php" -print | xargs sed -i 's/string1/string2/g'

但是当它遇到名称中有空格的文件时,它会抛出一个错误,如 No such file or directory。我将如何修改此行以包含带空格的文件?

我假设 find 命令的输出必须在文件路径周围输出双引号,但我自己不知道如何编写。

最佳答案

find . -name "*.php" -print0 | xargs -0 sed -i 's/string1/string2/g'

您也可以完全不使用 xargs:

find . -name "*.php" -execdir sed -i 's/string1/string2/g' {} +

关于linux - Find 和 xargs 以正确处理名称中包含空格的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26212500/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com