1

我的任务
我有一个包含以下内容的文件 A.txt。

aijdish uhuih
buh iiu hhuih
zhuh hiu
d uhiuhg ui
...

我想用这些词选择行aijdish,,d...buh我只知道我可以:

cat A.txt | grep "aijdish" > temp.txt
cat A.txt | grep "d" >> temp.txt
cat A.txt | grep "buh" >> temp.txt
...

但是我这次有几千字需要选择,在bash下怎么做呢?

4

3 回答 3

3

由于您有很多要查找的单词,我建议将模式放入文件并使用 greps-f选项:

$ cat grep-pattern.txt
aijdish
buh
d

$ grep -f grep-pattern.txt inputfile
aijdish uhuih
buh iiu hhuih
d uhiuhg ui

但是如果你有像d这样的词,你可能想添加一个-w选项来匹配整个词而不是词的一部分。

grep -wf grep-pattern.txt inputfile
于 2013-07-30T11:32:20.923 回答
1
$ grep -E "aijdish|d|buh" inputfile
aijdish uhuih
buh iiu hhuih
d uhiuhg ui
于 2013-07-30T11:28:51.970 回答
0

将要搜索的单词存储在一个文件中(比如 a.txt),然后编写一个脚本来搜索 a.txt 中的每一行并将其匹配到所需的文件中

于 2013-07-30T11:26:57.150 回答