我的Linux机器上有很多带扩展名为.crp的加密配置文件。 .crp文件可以通过dec_crp工具解密。
我的任务是搜索.crp文件中是否存在特定字符串并列出它。因此,首先我需要解密它 - 现在这个工具实际上将解密数据转储到标准输出控制台上,而没有列出文件名。
dec_crp < a.crp
..........
..........
现在从标准控制台中打印的数据中我需要验证字符串是否存在。如果不相同,我需要列出该文件。
是否有一个单行命令可以用来表示?
答案 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