在linux中调用sed

Max*_*rai 3 linux replace sed

我需要在文件中将一些字符串替换为另一个字符串 我知道如何使用单个文件:sed -i 's/a/b/'.但是递归函数怎么样?我想我必须以find . -name *某种方式使用xargs.

我需要你的帮助 :)

Ric*_*ams 10

你是正确的,find而且xargs是要使用什么.这是一个示例,它将在当前文件夹和所有子文件夹中找到所有带有".ext"文件扩展名的文件,并将该字母替换为文件中a的字母b.

find . -name "*.ext" | xargs sed -i 's/a/b/g'
Run Code Online (Sandbox Code Playgroud)

  • 您在查找中使用了什么而不是"*.ext"?如果它的"*"也将匹配目录,那些sed将不起作用.在find命令中添加"-type f"以仅获取常规文件. (2认同)