我有一个脚本,它可以通过 ssh 连接到所有服务器并显示每次执行的输出;我可以将这些输出重定向到/var/tmp/filename_output.txt
onserver1
吗?
该脚本从server1
所有服务器运行。这些是我要执行的命令来运行脚本并保存输出:
ssh server1
./script.sh > /var/tmp/filename_output.txt
ssh server2
./script.sh >> server1:/var/tmp/filename_output.txt
ssh server3
./script.sh >> server1:/var/tmp/filename_output.txt
答案1
编辑:
我一直在做一些测试,如果您运行这样的命令,您将获得本地输出
ssh yourserver < ./your_script.sh > your_script.stdout
结束编辑
从我的角度来看,你有两个选择。
选项1
在每台服务器上运行 script.sh 并将命令输出写入远程服务器上的 /var/tmp/filename_output.txt 后
scp /var/tmp/filename_output.txt myserver:/prefered_location/server_name.log
rm /var/tmp/filename_output.txt
选项2
从您的服务器导出 NFS 并在网络上的每台服务器上导入,这样您就可以在其他每台服务器上都有一个指向主服务器的本地 FS,并且通过将命令输出放在 FS 内的文件中来解决您的问题指向 NFS。
如果您需要有关如何导出 NFS 并将其导入客户端计算机的说明,请告诉我