我想 ssh 到一个节点并在那里运行命令,然后退出。对所有点头重复此操作。脚本相当简单
#!/bin/bash
NODES="compute-0-0 compute-0-1 compute-0-2 compute-0-3"
for i in $NODES
do
ssh $i
ls -l /share/apps
rpm -ivh /share/apps/file.rpm
exit
done
但问题是,ssh之后,ls -l
命令丢失。因此,命令提示符等待输入!
有办法解决吗?
UPDATE:
我将循环体修改为
ssh $i <<END
ls -l /share/apps
exit
END
但我得到
./lst.sh: line 9: warning: here-document at line 5 delimited by end-of-file (wanted `END')
./lst.sh: line 10: syntax error: unexpected end of file
Try this
#!/bin/bash
NODES="compute-0-0 compute-0-1 compute-0-2 compute-0-3"
for i in $NODES
do
ssh $i "ls -l /share/apps;rpm -ivh /share/apps/file.rpm;exit;"
done
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)