查找不包含字符串但在解密后的文件

时间:2015-10-29 18:14:39

标签: shell unix awk grep find

我的Linux机器上有很多带扩展名为.crp的加密配置文件。 .crp文件可以通过dec_crp工具解密。

我的任务是搜索.crp文件中是否存在特定字符串并列出它。因此,首先我需要解密它 - 现在这个工具实际上将解密数据转储到标准输出控制台上,而没有列出文件名。

dec_crp < a.crp
..........
..........

现在从标准控制台中打印的数据中我需要验证字符串是否存在。如果不相同,我需要列出该文件。

是否有一个单行命令可以用来表示?

2 个答案:

答案 0 :(得分:0)

如果文件在解密后不包含if ! dec_crp < a.crp | grep -q mystring then echo a.crp fi ,这将回显文件名(没有其他输出):

{{1}}

答案 1 :(得分:0)

或者更简洁:

dec_crp < a.crp | grep -q mystring || echo a.crp

对很多人来说:

find * -name '*.crp' -printf "dec_crp < '%p' | grep -q mystring || echo '%p'" | sh