草庐IT

grepping

全部标签

linux - 如果未指定文件,为什么 grep 不起作用?

我在使用Linuxgrep命令时遇到一些问题,它不起作用!!!我正在我的Ubuntu系统上尝试以下测试:我创建了以下文件夹:/home/andrea/Scrivania/prova在此文件夹中,我创建了一个名为prova.txt的txt文件,在此文件中,我写入了字符串test并保存了它在shell中,我首先访问了文件夹/home/andrea/Scrivania/prova,因此我按以下方式启动了grep命令:~/Scrivania/prova$greptest问题是光标不停地闪烁,什么也找不到!为什么?有什么问题? 最佳答案 您还

linux - 庆典 : grep exact matches based on the first column

我有一个如下所示的.txt文件:9342432_A1934243210004392483_A2439248320004324321_A343243211000934243293424322000例如,我想生成ID为4324321_A3和9342432的子集(基于第一列!)。我尝试了以下命令来查找完全匹配项:grep-E'4324321_A3|9342432'但是当我使用这条线时,我最终得到了这样一个数据集:9342432_A1934243210004324321_A343243211000934243293424322000问题是与ID(9342432_A1)的一部分匹配的行不应该存在

linux - 带有连续管道的 grep 不起作用

(可能是“tcpflow”的问题)我写了一个监控http流量的脚本,我安装了tcpflow,然后grep它有效(您应该发出一个http请求,例如curlwww.163.com)sudotcpflow-p-c-ieth0port802>/dev/null|grep'^Host:'它像这样输出(连续)Host:config.getsync.comHost:i.stack.imgur.comHost:www.gravatar.comHost:www.gravatar.com但我不能继续使用管道不起作用(无输出)sudotcpflow-p-c-ieth0port802>/dev/null|gr

linux - 如何使用grep命令显示文件最后一个字段大于100k小于140k的条目

我需要使用grep命令从员工文件中选择条目。员工列表文件将薪水作为文件中每一行的最后一个字段。如何使用grep仅选择工资大于100000且小于140000的员工?这是我目前所拥有的,但我无法弄清楚如何防止列表中的100000个结果出现在grep结果中。grep"[1][0-3]....$"emp.lst这是我从grep得到的结果...$grep"[1][0-3]....$"emp.lst0110:v.k.agrawal:g.m.:marketing:12/31/40:1000000110:v.k.agrawal:g.m.:marketing:12/31/40:1300000110:v.

linux - 如何 grep 监听端口 80 也可以过滤其他端口包含 80,例如 8080 8088 ...?

如果有任何进程正在监听端口80,我想使用bash进行grep,但现在我偶然发现了其他端口号,这让我很烦。我如何在grep中过滤它?netstat-ant|grepLISTEN|grep80|wc-l它还输出其他记录如80808088等。 最佳答案 我正在查看我的netstat命令的输出,然后看到:tcp40010.0.1.10.5694164.34.119.101.80ESTABLISHEDtcp40010.0.1.10.5693664.34.119.101.80ESTABLISHEDtcp40010.0.1.10.5693264.

linux - 将两个 greps 和 awk 应用于相同的输入

我在我的python脚本中使用两个简短的UNIX命令来获取有关附近无线接入点的一些数据。n°1,获取接入点的ESSID:“iwlist网卡扫描|grepESSID|awk'{print$1}'”n°2,获取接入点的信号强度:"iwlist网卡扫描|greplevel|awk'{print$3}'"我的问题是我一个接一个地使用这两个命令,这意味着它不会生成“对称”数据。您可能会获得6个ESSID和4个信号强度数据。因为第一次,脚本找到了6个AP(A、B、C、D、E和F),而下一次只有4个AP(A、C、E和F)。我的一些问题如下:有没有办法“拆分”第一个iwlistNIC扫描的结果,然后应

linux - 在 grep 内容之后添加一个额外的列

我了解到grep可以逐行提取文件中的特定内容。只是想知道如何在每行之前或之后添加另一列作为索引。例如:grep"aaa"text.txt>tmp.txt在tmp.txt文件中,我们可以看到如下内容,aaawekjreqejrteraaawrgeaaaere但是,我想添加一个特定的索引作为额外的列。因此,tmp.txt可能如下所示:JohnaaawekjreJohnqejrteraaaJohnwrgeaaaere 最佳答案 你可以使用awk:awk'/aaa/{print"John",$0}'text.txt>tmp.txt

linux - 如何从纯文本中 grep 键值存储中的值

给定一个包含的纯文本文件FOO=fooBAR=barBAZ=baz我们如何使用键grep获取值? 最佳答案 使用lookbehind:$grep-Po'(?我也喜欢awk:$awk-vFS="FOO="'NF>1{print$2}'filefoo或者更好:$awk-F=-vkey="FOO"'$1==key{print$2}'filefoo使用sed:$sed-n's/^FOO=//p'filefoo或者即使使用Bash-仅当您确信该文件不包含任何奇怪的值时-,您可以获取该文件并回显所需的值:$(sourcefile;echo"$F

linux - 如何索引文本文件以缩短 grep 时间

我有大量文本文件需要定期进行grep处理。大约有230,000个文件,总计约15GB的数据。我已阅读以下主题:Howtousegrepefficiently?Howtousegrepwithlarge(millions)numberoffilestosearchforstringandgetresultinfewminutes我将使用grepping的机器是IntelCorei3(即双核),所以我无法在很大程度上并行化。该机器正在运行Ubuntu,我更愿意通过命令行完成所有操作。有什么方法可以索引或标记文本文件的内容以改进搜索,而不是每次都运行沼泽标准的grep?

linux - 结合ccze和grep?

ccze是一个出色的日志着色器。问题是,尽管手册中有说明,但/usr/lib64/ccze或$HOME/.ccze中没有插件。看起来所有的插件都被编译成二进制文件(所以它们不是真正的插件)而且我不能轻易修改突出显示。我想要实现什么?我需要添加更多模式以红色突出显示。尤其是被空格包围的单个0。因为我不能轻易修改ccze我正在考虑将它与grep结合起来:tail-f`/bin/ls-1td/var/log/updates/index_*.log`|ccze-A|grep--color'\|0'但这不会产生任何输出(挂起?)尽管事实上:tail-f`/bin/ls-1td/var/log/u