我有一个朋友的邮件地址列表(.csv),我想知道他们是否在pgp密钥服务器上存储了公钥。我想让this为Mac。
pgp部分不是问题,但是我无法绕过 for循环来浏览文件中的每个元素......
for add in {cat contacts.csv | grep @}; do gpg --search-keys $add; done
答案 0 :(得分:1)
不要为了为文件的每一行运行单个命令而编写循环,而是使用xargs
。 cat
is also not required here.
这个小片段正在做你想要实现的目标:
grep @ contacts.csv | xargs -n 1 gpg --search-keys
如果你坚持循环,使用右括号$( ... )
在子shell中运行命令:
for add in $( grep @ contacts.csv ); do gpg --search-keys $add; done
我在security stack exchange和Stack Overflow上回答了一个类似但不平等的问题,你可能也会在那里得到一些启发。