Articles of grep

新的64位Linux系统有正常的进程(ps,grep等)占用过多的VIRT mem

我们刚刚从一台32位的机器移到了一台64位的机器上。 尽pipe新盒子的内存是旧盒子的两倍,但我们很快就耗尽了内存。 运行一个简单的ps命令将说明问题。 新机器: 132 prod-Charlotte1-node1 ~/public_html/rearch/cgi-bin> ps aux | grep ps root 293 0.0 0.0 0 0 ? S< May09 0:00 [kpsmoused] xamine 2267 1.0 0.0 63728 928 pts/3 R+ 16:50 0:00 ps aux xamine 2268 0.0 0.0 61172 752 pts/3 S+ 16:50 0:00 grep ps 旧机器: 132 prod-116431-node1:/home/xamine> ps aux | grep ps […]

恢复编程源文件

我有源代码文件(Java和C ++)从一个损坏的RAID 1 + 0arrays恢复,我已经能够访问与其他服务器的虚拟驱动器,但ReiserFS分区无法恢复与ReiserFS工具。 我已经使用DD做了分区的二进制映像,现在我想知道是否有一个比GREP更好的工具来使用文件中包含的标签来查找文件: WatchDog.cpp必须包含“类WatchDog …” grep -a -B20 -A1000 'class WatchDog' BACKUP.img | strings > recovered.txt 我正在考虑某种REGEX工具,可以通过一个模式find这些文件,因为这是编程代码! 感谢您的帮助!

将文件夹中的所有图像移动到子文件夹,并将这些图像的所有引用更新到新的位置?

我有一个文件夹,其中包含~50个文本文件(PHP)和数百个图像。 我想将所有的图像移动到一个子文件夹,并更新PHP文件,所以对这些图像的任何引用指向新的子文件夹。 我知道我可以很容易地移动所有的图像(mv * .jpg / image,mv * .gif / image等),但不知道如何去更新所有的文本文件 – 我假设一个正则expression式必须创build匹配文件中的所有图像,然后以某种方式新的目录必须附加到图像文件名? 这最好用一个shell脚本来完成吗? 任何帮助表示赞赏(服务器是Linux / CentOs5) 谢谢!

tee和grep在同一时间(shell)?

我试图运行一个服务器,写入$日志(一个txt文件),然后find所有的文件中的文件开始[1],并把它放在另一个文件。 这是我的尝试。 tee -a $log和其他所有东西一起工作。 grep命令不通过。 run="tail -n0 -f -s 0.01 $cmds | (while true; do $tron –userconfigdir $userconfigdir –userdatadir $userdatadir –vardir $var; done) | tee -a $log | grep '^\[1\]' > ${var}logs/chatlogs.log" 可以做什么来复制从tee -a $log开始的所有文本[1]到另一个文件?

在文件中显示特定的单词。 在日志中用作电子邮件的variables,grep

我只想在/ var / log / secure文件中显示电子邮件地址。 电子邮件进入一个variables,所以只是grepping线路将无法正常工作。 我知道如何将sed命令串在一起,但有没有更清晰的方法? 如果有一个更清晰的方式来获得ssh关键评论电子邮件,我甚至可以完全废除这个想法。 我正在寻找哪个电子邮件评论,在客户端SSH密钥,被用来login。 到目前为止,我一直在使用这样的东西.. ssh root@localhost "sleep 1 ; tail -1 /var/log/secure | …" 我希望有一个更好的方法,或者至less一个干净的方式来显示电子邮件。

比较/计算像文件

我有定期的计划生成报告。 这些报告遵循简单一致的格式(具体而言,这些是“OProfile分析报告”)。 每行的格式是: UNIQUE_NAME,数 我想运行所有的报告,并计算(说)和每个unique_name的平均值。 这怎么可能呢?

Ubuntu命令来不断监视一个服务?

我很好奇,如果任何人有新的命令像尾巴或顶部不断监测服务运行。 我正在尝试观看sendmail以查看谁正在连接到它,但希望使它更加dynamic,而不是只是反复inputps aux | grep发送 有没有一个不断保持这种运行的好方法? 谢谢你们家伙

puppet master – 编译将错误logging到stdout

我看到一个关于这个被接受,然后在一年前closures的错误: http ://projects.puppetlabs.com/issues/3670,但我使用puppet 2.7.14,并得到同样的问题。 我试图用“傀儡独奏”(即只运行configuration在每个服务器上的木偶),因为我在这个项目中只有2或3个服务器,并且添加另一台服务器作为傀儡大师是完全矫枉过正的。 除非我误解了,手动将节点应用到服务器的最好方法是: puppet master –compile=mynode > catalog.json puppet apply –catalog catalog.json 但puppet master命令会输出一些警告和通知给标准输出,混入所需的json内容。 它使用彩色的输出,所以我不能通过egrep -v '^warning:'pipe道egrep -v '^warning:' 编辑:我想这是不是太大的处理使用grep – 因为傀儡2.7漂亮 – 打印的实际内容和警告永远不会以空格开始,通过egrep '^( |{|})'pipe道输出egrep '^( |{|})'作品 所以我的问题基本上是: 如果不使用傀儡大师来应用傀儡节点,有没有比这更好的方法? 如果没有傀儡大师,我真的不能在网上find任何好的参考资料,尽pipe对于一个小项目来说这似乎是一个完全合理的事情。 有没有一个设置或标志,我错过了会让puppet master停止作为一个混蛋,并将其错误发送到stderr而不是标准输出? 或者我真的必须closures颜色logging,然后grep排除警告:并注意:行?

只有当值在行尾时,grep +匹配值

请咨询我的代码有什么问题,(我在OS Linux和solaris上运行这个代码) 我不明白: "file ended with .tmp" 例: 我需要validation$ FILE以.tmp或.old等结尾… 用下面的例子代码设置参数:FILE = hosts.tmp 所以我希望grep会匹配“.tmp ”,因为.tmp是最后一个字符 对于“TEMP”,“previos”或“-old”等其他TOKENS也是如此 代码(ksh脚本) TOKENS=".tmp .old .previous -log temp ,TEMP -OLD previos" FILE=hosts.tmp for TOKEN in ` echo $TOKENS ` do [[ ` echo $FILE | grep -c '$TOKEN$' ` -eq 1 ]] && echo "file ended with $TOKEN" done

find并删除tar.gz文件中某种types的文件

有没有办法不仅可以find,而且还可以删除 .tar.gz文件中的任何.gz文件? 我发现这个链接,但我不知道如何修改它,使其能够删除find的文件。