通过 scp 或 ssh 将脚本的输出重定向到远程服务器

通过 scp 或 ssh 将脚本的输出重定向到远程服务器

我有一个脚本,它可以通过 ssh 连接到所有服务器并显示每次执行的输出;我可以将这些输出重定向到/var/tmp/filename_output.txtonserver1吗?

该脚本从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 并将其导入客户端计算机的说明,请告诉我

相关内容