linux - 远程bash脚本执行

标签 linux bash ssh

我正在考虑一个 bash 脚本,它可以逐一登录到 10 个服务器,执行一些任务并将输出保存在我登录到服务器的源服务器的公共(public)文件中。更清楚地说,我正在使用测试服务器“test”,并且我需要使用 ssh 登录到其他服务器,例如 server1、server2、...server10。成功登录后,执行一些命令,例如 cat/root/serverstatus 并将输出保存到“测试”服务器中名为 serverstatus.txt 的通用文件中。我已经安装了 ssh keygen,并且不需要密码即可进入这些服务器。提前致谢。

最佳答案

来自测试服务器

for i in {1..10}; do ssh server${i} cat /root/serverstatus; done > file

如果您的用户不是 root,请在 cat 之前添加 sudo 对于通过 ssh 使用 sudo 进行的某些操作,您应该在 sudoers 文件中注释行“Defaults requiretty”

关于linux - 远程bash脚本执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32881911/

相关文章:

python - 阅读命令的反馈?

c++ - 将 int64_t 转换为 int 时,如何让 g++ 发出警告?

linux - 如何增量读取行

python 3 paramiko ssh代理在第三台主机上使用远程命令转发跳转主机

git - 致命: cannot exec '/home/<user>/.ssh' : Permission denied when using Git

c - 我需要减少项目中使用的所有目标文件的文本段

c - 参数 2 的类型为 int * 并且想要读取文件

macos - 用于创建以当前日期命名的文件的 OS X 终端命令

mysql - 错误: database is uninitialized and password option is not specified

linux - ubuntu 上 ssh 的公钥存储在哪里?