一、
#ES_HNS='vmslave1 vmslave2' #!/bin/bash HOSTNAME=`hostname` ES_HNS='vbserver vmslave1 vmslave2' THIS_HN=$HOSTNAME existOnErr(){ if [ 0 -ne $? ] then echo '異常: '$1 exit 0 fi } for HN in $ES_HNS do if [ $THIS_HN != $HN ] then
### 因为是普通用户,所以只能切到 ~ ( ~等于/home/用户目录),不可以
cd /home/hewenyan/auto_es_master_slave ./remote.sh $HN > ~/eslog.log 2>&1 & ## 后台进行远程 existOnErr '文件 ./remote.sh 不存在' else cd /opt/bigdata/elk/es622/bin/ existOnErr '目錄/opt/bigdata/elk/es622/bin不存在' ./elasticsearch > ~/eslog.log 2>&1 & ## 后台打开es existOnErr $THIS_HN' ./elasticsearch 啓動失敗' fi done
二、
#!/bin/bash CMD='ssh henry@'$1 $CMD > /dev/null 2>&1 <<eeooff cd /opt/bigdata/es622/bin ./elasticsearch exit 0 ## 加0表示正常退出,可以继续进行下个操作,否则可能不会继续走 eeooff echo done!
or
#!/bin/bash CMD='ssh hewenyan@'$1 #$CMD > ~/testlog.txt 2> ~/testerr.txt <<eeooff $CMD 1> ~/testlog.txt 2> ~/testerr.txt<<eeooff cd /opt/bigdata/elk/es622/bin ./elasticsearch exit eeooff