shell远程执行 远程执行脚本

对于简单的命令:
如果是简单执行几个命令,则
ssh user@remoteNode "cd /home ; ls"

  • 基本能完成常用的对于远程节点的管理了,几个注意的点: 双引号,必须有。如果不
  • 加双引号,第二个ls命令在本地执行
  • 分号,两个命令之间用分号隔开

登录到nodelist中的每个节点执行命令

[asc16@cu02 zjhua]$ cat nodelist
cu01
cu02
[asc16@cu02 zjhua]$ 
#!/bin/bash
for node in `cat nodelist`
do
echo $node
ssh $node  > /dev/null 2>&1 << eeooff
cd /home/asc16
hostname >>/home/asc16/zjhua/log
date >>/home/asc16/zjhua/log
exit
eeooff
echo done!
done

程执行的内容在“<< eeooff ” 至“ eeooff ”之间,在远程机器上的操作就位于其中,注意的点:
<< eeooff,ssh后直到遇到eeooff这样的内容结束,eeooff可以随便修改成其他形式。
重定向目的在于不显示远程的输出了
在结束前,加exit退出远程节点

参考
http://www.cnblogs.com/ilfmonday/p/ShellRemote.html

你可能感兴趣的:(shell,脚本,管理)