Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 对整个文件使用grep_Bash_Grep - Fatal编程技术网

Bash 对整个文件使用grep

Bash 对整个文件使用grep,bash,grep,Bash,Grep,我有一张250行的清单。我必须通过一个web服务器运行所有这些文件,以获得输出列表。然而,这个列表返回的行比我感兴趣的多。比如,我的list.txt是: a.1 b.1 etc 然后输出为output.txt: a.1 a b c a.2 b a b a.3 d k o b.1 b o p b.2 o i y b.3 p i y etc 是否可以使用grep命令在output.txt中搜索list.txt中的所有单词,然后生成“通缉”列表通缉.txt 我需要我的output.txt中的整行

我有一张250行的清单。我必须通过一个web服务器运行所有这些文件,以获得输出列表。然而,这个列表返回的行比我感兴趣的多。比如,我的list.txt是:

a.1
b.1
etc
然后输出为output.txt:

a.1 a b c
a.2 b a b
a.3 d k o
b.1 b o p
b.2 o i y
b.3 p i y
etc
是否可以使用grep命令在
output.txt
中搜索
list.txt
中的所有单词,然后生成“通缉”列表
通缉.txt

我需要我的
output.txt中的整行

我在AskUnuntu上问过这个问题,但他们把我送到这里来了。有人建议我这样做

$ grep -wFf list.txt output.txt
但是我被提示一个
grep:outofmemory


对于像我这样的初学者,有没有一种简单的方法可以做到这一点?

这一行代码读取
list.txt
中的每一行,并在
output.txt
中对其进行greps(假设您只想在开始时将行与单词匹配,并且仅当它是自己的单词时):

wanted.txt
包含:

a.1 a b c
b.1 b o p

请注意,此解决方案不如使用
grep-f
,但可能会解决您的特定内存问题(未经测试)。

请澄清您的输入是什么,以及您希望如何输出?250行文件的内存不足?你是在IBM 5150上运行它吗?不是。。。我有一台MacBookPro。这是全新的。我的输入是一个包含250个单词的文件(每行一个)。我想使用每一行/字在output.txt中找到对应的行,并生成一个新的文件wanted.txt这正是我想要的。但是,它只给了我一个空的want.txt文件:(同时
cat list.txt
起作用?那么
echo test>want.txt
呢?那么
cat output.txt
在读取word时做回显“$word”呢;donewant.txt
?这意味着所有文件都在您的工作目录中,并且您的用户有权在那里创建文件。我已经使用Bash 4.1.5进行了测试,但是由于我的命令只使用兼容的shell语法,并且OS X
grep
支持
-w
选项,我真的看不出您的工作目录会出什么问题机器。我不知道……但是非常感谢你试图帮助我。我想我必须用手来做:(
a.1bar
fooa.1
foo a.1 bar
a.1 a b c
b.1 b o p