Unix &引用;scp“openssl”两者都需要密码

Unix &引用;scp“openssl”两者都需要密码,unix,pipe,Unix,Pipe,有没有一种方法可以明智地做到这一点: scp user@host:/path/to/file /dev/tty | openssl [options] | less 无需创建文件,也无需在参数中直接提供密码 问题是,两者都要求输入密码,但它们的启动顺序(因此也要求输入密码的顺序)未定义。我不能提供任何一个密码 可以先完成scp,然后启动openssl,但不需要临时文件。虽然不是特别好,但似乎可以: mkfifo pipe && { scp user@host:/path/t

有没有一种方法可以明智地做到这一点:

scp user@host:/path/to/file /dev/tty | openssl [options] | less
无需创建文件,也无需在参数中直接提供密码

问题是,两者都要求输入密码,但它们的启动顺序(因此也要求输入密码的顺序)未定义。我不能提供任何一个密码


可以先完成
scp
,然后启动
openssl
,但不需要临时文件。

虽然不是特别好,但似乎可以:

mkfifo pipe && {
  scp user@host:/path/to/file pipe | openssl [options] -in pipe | less
#                                  ^
#                                  note the pipe
  rm pipe
}

使用密钥而不是密码这将是解决此特定问题的一个选项,但是如果我不能使用密钥怎么办?