我想从文件中查找一些单词。我在 Linux 上使用 grep 命令。
grep "word1" 原始文件
但是有很多单词需要查找,它们都在“words.file”中。如果可能的话,我想给 grep 命令提供参数。我将把“words.file”中的单词作为参数提供给 grep 命令,然后在“original.file”中找到这些单词
我可以这么做吗?
答案1
man grep 可以帮助您:grep 有 -f 参数,它指定从文件中读取模式。
grep -f words.file original.file
但请注意,words.file 中的单词必须每行一个,但 tr ' ' '\n' 可以帮助您实现这一点。
答案2
尝试
grep -e word1 -e word2 -e word3 original.file
如果你想-e word
从words.file
尝试构建 -things
eval $(echo -n 'grep '; while read word; do echo -n "-e '$word' "; done < words.file; echo 'original.file')
也许更容易和更好(但每个单词一个 grep 过程):
xargs -I '{}' grep -e '{}' original.file < words.file