【发布时间】:2014-08-26 07:29:19
【问题描述】:
为了在更大的脚本中使用,我尝试将 fifo 与 gpg 一起使用。首先我有一个加密文件secrets.txt.gpg
me@box:~$ touch secrets.txt
me@box:~$ echo 'first secret' > secrets.txt
me@box:~$ gpg -c secrets.txt
并且输入了两次简短的密码短语('easy')。
现在我想解密秘密文件,添加一个元素并对结果做一些事情。为了简单起见,我只是例如。想cat 结果。正在尝试
me@box:~$ mkfifo fifo
me@box:~$ gpg -d secrets.txt.gpg > fifo &
[5] 9405
me@box:~$ echo 'second secret' > fifo &
[5] 9405
me@box:~$ cat < fifo
gpg: CAST5 encrypted data
second secret
在Ctrl-C 之前让shell 无响应。我尝试过提供流程替换
me@box:~$ cat <(gpg -d secrets.txt.gpg) <(echo 'second secret') > fifo &
[7] 9422
me@box:~$ gpg: CAST5 encrypted data
Enter passphrase: easy
bash: easy: command not found
me@box:~$
如何在gpg -d 解密后将输出写入管道,添加条目并稍后加密到磁盘?
【问题讨论】: