ack.pl工具和ack.pl标志+如何忽略文件类型

时间:2015-03-11 09:38:39

标签: linux perl grep ack

我正在使用ack.pl工具来搜索文件中的字符串或IP

ack.pl的官方网站是 - http://beyondgrep.com/documentation/

ack.pl CLI示例(希望在/ etc下的文件中找到字符串STRING_TO_FIND)

  /tmp/ack.pl -Q -a -l --max-count=1  STRING_TO_FIND  /etc

但有时候ack.pl被困在文件上:

  ---S--l---   1 root     root          0 Mar 10 04:25  /opt/POP_lock

来自MAN paget“S”attr表示:

使用大写“S”而不是小写“s”告诉文件系统立即将文件写入磁盘,而不是将其存储在缓冲区中。 (另请注意,这次我们保留了“s”属性,因此我们现在为此文件设置了两个属性。)

所以我的问题是:

ack.pl如何忽略带有“S”的文件, 或者什么ack.pl标志shuld用“S”忽略这个文件?

1 个答案:

答案 0 :(得分:2)

ack(更多官方和最新版本here)不会检查文件权限,也无法对其进行过滤。那么find+ackfind+grep成语呢?

find /etc -not -perm /o+S -type f -exec grep -l STRING_TO_FIND {} \;

(未经测试)