更改主机列表上的根目录的.bashrc

我需要一种方法来以用户身份login到主机名/ IP列表,然后创build/追加root的.bashrc

根没有权限直接SSH到服务器

ssh hostname "sudo -S sh -c 'echo stuff >> /root/foo.txt'" < password.txt 

你仍然需要input每个ssh密码,但是它会从password.txt中读取sudo密码。

希望这可以帮助。

正如上帝所提到的那样,sudo -S可能会有用。 希望你有SSH公钥已经到位,以删除SSHlogin提示。 如果不是的话,我build议在命令之前推送它们。 相同数量的凭证提示(每个机器最初一个,实际更改命令中没有一个),下次在该级别设置为不提示。

我build议大力考虑build立像Puppet这样的东西。 就像ssh密钥一样,configuration可能与实际的configuration推送有相同的痛苦,那么你可以做一些额外的工作来configuration推送,然后再为下一次设置。