我需要并行运行一些命令,包括 SCP。为此,我使用 GNU Parallel。问题是我不知道如何将密码传递给 SCP。这是一条类似于我正在运行的行:
ls 2011_* | parallel scp {} user@domain
并且如果ls
找到3个文件,scp同时询问3次密码,我只能输入最后一个进程的密码来提示它。
我暂时解决了使用公钥连接的这个问题,但由于公司政策,这在未来不会成为一个选项。我阅读了 SCP 手册页,但找不到选项,但我非常确信 Parallel 应该有一个选项让我输入密码。
有人知道解决这个问题的方法吗?
编辑:我想知道是否有一种方法可以告诉parallel
密码,以便它可以在scp
每次要求时提供密码。也许是这样的:
ls 2011_* | parallel scp {} user@domain < file_with_password.txt
但是指定的重定向STDIN
是 forscp
而不是 for ls
or parallel
。