例如,如果我想打开其中包含int语句的所有文件,则使用grep并使用xargs将搜索结果输送到vim。
grep -rl 'int' . | xargs vim通常,如果我想用int替换float,我会像这样通过sed这样做
sed 's/\<int\>/float/g' foo.c但是,如果我想找到所有文件中有单词int,然后在文件内联上进行单词替换,我将如何组合这两个文件(例如。sed -i 's/\<int\>/float/g')
发布于 2021-03-30 22:17:20
,但我如何将两者结合起来
你应该做的就是:
grep -rl 'int' . | xargs sed -i 's/\<int\>/float/g'发布于 2021-03-30 22:17:37
您可以使用-s标志将命令文件传递给vim,因此我相信您可以创建一个名为"cmd.vim“的”命令“文件,其中包含行:s/int/float/g,然后使用grep -rl 'int' . | xargs vim -s cmd.vim。
编辑
这是如果您想在从int更改到浮动之后将文件保持在vim中;如果您只想进行更改@KamilCuk的答案更好
https://stackoverflow.com/questions/66879030
复制相似问题