roj*_*anu 4 linux search grep replace sed
目前,我有
grep -irl $schema $WORKDIR/ | xargs sed -i 's/'"$schema"'/EXI1/gI'
Run Code Online (Sandbox Code Playgroud)
这对于带空格的文件名不起作用.
任何想法,如何递归搜索和替换所有文件?
谢谢
Has*_*kun 12
添加-Z(aka --null)标志grep,以及-0(也称为--null)标志xargs.这将输出NUL终止的文件名,并告诉xargs读取NUL终止的参数.
例如.
grep -irlZ $schema $WORKDIR/ | xargs -0 sed -i 's/'"$schema"'/EXI1/gI'
Run Code Online (Sandbox Code Playgroud)