在本机远程其他服务器执行脚本时,比如启动SOA服务,会不停输出启动信息,妥妥的刷满了屏,无法继续执行后面的脚本了,尤其是启动多台集群服务器的时候,
于是想把这些输出屏蔽掉,代码如下:
function start_soa { local FUNC_JAR_ALL_IP="10.123.99.16 10.123.99.17" local FUNC_JAR_SERVER_NAME="soa_server" local FUNC_BIN_PATH="/soa/bin" echo -e "\n" echo -e "START: start soa \n" # 循环启动多台SOA服务器 for FUNC_JAR_ONE_IP in ${FUNC_JAR_ALL_IP} do echo -e "\n" echo -e "SERVER_IP : ${FUNC_JAR_ONE_IP} \n" # 利用 ssh 免密码登录远程服务器执行启动脚本,同时将输出的启动信息去掉 ssh -T ${FUNC_JAR_SERVER_NAME}@${FUNC_JAR_ONE_IP} << EOF source ~/.bash_profile ${FUNC_BIN_PATH}/start.sh > /dev/null 2>&1 & EOF done echo -e "\n" echo -e "END : start soa" }
Leave a Reply