Gir*_*ldo 18 linux vim file-io grep
我需要gret to tons(10k +)的特定单词文件.现在返回一个文件列表,我还需要grep另一个单词.
我发现grep可以这样做,所以我使用:
grep -rl word1 *
Run Code Online (Sandbox Code Playgroud)
它返回我想检查的文件列表.现在从这些文件(100+),我需要grep另一个词.所以我必须做另一个grep
vim `grep word2 `grep -rl word1 *``
Run Code Online (Sandbox Code Playgroud)
但那挂了,它没有做任何事情,
为什么?
Boo*_*eus 35
因为你有一个双`,你需要使用$()
vi `grep -l 'word2' $(grep -rl 'word1' *)`
Run Code Online (Sandbox Code Playgroud)
或者你可以使用嵌套$(...)
(如提到的goblar)
vi $(grep -l 'word2' $(grep -rl 'word1' *))
Run Code Online (Sandbox Code Playgroud)
Mic*_*ker 20
grep -rl 'word1' | xargs grep -l 'word2' | xargs vi
Run Code Online (Sandbox Code Playgroud)
是另一种选择.