用于从多个主机中删除文件的Shell脚本

时间:2017-10-02 17:58:26

标签: linux shell ssh sh xargs

我有一个脚本,ssh进入主机列表并删除文件。我面临的问题是,当删除发生时,控制台会要求输入密码。

为了解决这个问题,我知道使用下面的代码来硬编码密码

time cat ../hosts.txt | xargs -P 16 -I foo ssh foo ' echo "MYPASSWORD" | sudo -kS rm -rf /tmp/randomfile*'

有没有办法避免硬编码密码?

1 个答案:

答案 0 :(得分:0)

您可以设置ssh-agent

我建议使用ssh-key,你可以查看这篇文章,描述如何创建它并将其添加到你的ssh-agent中:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/