Questions tagged «grep»

对于与grep有关的问题,这是一种用于搜索文件中文本模式的命令行工具。对于有关grep本身的问题或因使用grep命令行工具引起的问题,请使用此标签。


11
有没有办法就地修改文件?
我有一个相当大的文件(35Gb),我想就地过滤该文件(即我没有足够的磁盘空间来存放另一个文件),特别是我想grep并忽略某些模式-有没有办法这样做而无需使用其他文件? 假设我要过滤掉所有包含foo:例如...的行

6
如何在整个文件系统中搜索文本?
假设应该使用grep工具,我想在整个文件系统中搜索文本字符串“ 800x600”。 我试过了: grep -r 800x600 / 但这不起作用。 我相信我的命令应该做的是递归地遍历根目录下所有文件/文件夹中的文本“ 800x600”,并列出搜索结果。 我究竟做错了什么?
53 grep  recursive 

2
为什么egrep [wW] [oO] [rR] [dD]比grep -i word快?
我一直在使用grep -i,发现它比egrep同等字母的字母大写或小写字母慢。 $ time grep -iq "thats" testfile real 0m0.041s user 0m0.038s sys 0m0.003s $ time egrep -q "[tT][hH][aA][tT][sS]" testfile real 0m0.010s user 0m0.003s sys 0m0.006s 是否grep -i还要进行其他测试egrep?
49 grep  performance 

3
什么是安装时的“回路装置”?
我正在装载一个iso文件,并查看本教程。他们使用以下命令: $ mount -o loop disk1.iso /mnt/disk 我正在尝试了解的使用-o loop。我有两个问题: 当我查看长长的手册页进行装载时,需要花费一些时间来找到该-o选项。如果我man mount | grep "-o"得到了并且出错了,当我在文件中查找时,找不到信息“ loop”是option的命令文本-o。记录在哪里? 另外,安装的“回路设备”概念是什么?

2
从文件读取grep模式
我有几个大的文本文件,并且在文件中,UNIQS.txt我有grep从另一个文件来的字符串列表。我使用的代码是 grep -f UNIQS.txt EEP_VSL.uniqs.sam > UNIQ_templates.sam 什么都不做-生成的文件为空。但是当我这样做 grep -F -f UNIQS.txt EEP_VSL.uniqs.sam > UNIQ_templates.sam 它正常工作。这让我感到困惑,因为我不认为grep会将条目解释UNIQS.txt为不带引号和斜杠的正则表达式模式,以此类推(例如没有)。一般情况下,如果从文件中获取模式,它将自动认为它们是regexp模式? 编辑:在UNIQS.txt文件中,有换行符分隔的形式的字符串 HWI-ST365:215:D0GH0ACXX:2:1101:10034:186783 (称为模板名称)和文件EEP_VSL...选项卡分隔的列,大约有14列,第一列是模板名称,因此基本上我想提取与文件中每个模板相对应的行。
49 grep 

13
匹配后如何打印所有行至文件末尾?
输入文件1为: dog 123 4335 cat 13123 23424 deer 2131 213132 bear 2313 21313 我给匹配从中的模式other file(如dog 123 4335从file2)。 我匹配该行的模式,dog 123 4335并且在打印不匹配行的所有行后,我的输出是: cat 13123 23424 deer 2131 213132 bear 2313 21313 如果仅使用无行地址仅使用模式,例如1s 如何匹配并打印行?

5
给grep输出到rm
我正在尝试将grep输出传递给rm,但它会输出无用的东西。是否需要任何开关rm?或者可以rm直接提供正则表达式? ls | grep '^\[Daruchini'| rm rm:缺少操作数请尝试使用rm --help获取更多信息。
47 bash  grep  rm 


3
如何使用find…-exec grep返回文件名和行号?
使用时find,如何在搜索字符串时返回文件名和行号?我设法在一个命令中返回文件名,并在另一个命令中返回行号,但是我似乎无法将它们组合在一起。 档案名称: find . -type f -exec grep -l 'string to search' {} \; 行号: find . -type f -exec grep -n 'string to search' {} \;
45 grep  find 

4
反向grepping
假设我有一个很大的文本文件(大约10.000.000行)。我需要grep从头开始并将结果保存到文件中。完成任务的最有效方法是什么?

3
如何在每次grep匹配之后显示行,直到其他特定匹配?
我知道通过使用"-A NUM"开关,我可以在每次比赛后打印特定数量的尾随行。我只是想知道是否有可能打印尾行,直到每次比赛后找到一个特定的单词。例如,当我搜索“单词A”时,我想查看包含“单词A”的行以及其后的行,直到包含“单词D”的行。 上下文: Word A Word B Word C Word D Word E Word F 命令: grep -A10 'Word A' 我需要以下输出: Word A Word B Word C Word D
44 grep 


4
grep:内存耗尽
我正在做一个非常简单的搜索: grep -R Milledgeville ~/Documents 一段时间后出现此错误: grep: memory exhausted 如何避免这种情况? 我的系统上有10GB的RAM,运行的应用程序很少,所以我真的很惊讶一个简单的grep内存不足。~/Documents大约100GB,其中包含各种文件。 grep -RI 可能没有这个问题,但是我也想在二进制文件中搜索。

5
如何在单列上运行grep?
我想grep ls -l命令的输出: -rw-r--r-- 1 root root 1866 Feb 14 07:47 rahmu.file -rw-r--r-- 1 rahmu user 95653 Feb 14 07:47 foo.file -rw-r--r-- 1 rahmu user 1073822 Feb 14 21:01 bar.file 我只想grep rahmu在列$ 3 上运行,所以grep命令的输出应如下所示: -rw-r--r-- 1 rahmu user 95653 Feb 14 07:47 foo.file -rw-r--r-- 1 rahmu user 1073822 Feb 14 …
42 grep  awk 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.