如果我没有正确搜索所有可能的帖子,我深表歉意,但所有帖子似乎都有点不同,我开始对这个问题感到眼花缭乱。
以下 bash 代码是我目前所拥有的。
for server in `cat serverlist2.txt`; do ssh -q $server
if ! ps -ef | grep -q http ; then
echo $server
fi
done
我是 bash 脚本的新手,我必须找到文件 serverlist2.txt 中列出的所有运行 apache (http) 的主机,然后打印找到 http 的主机名。任何帮助将不胜感激。
2013 年 9 月 29 日更新
for server in `cat serverlist2.txt`; do
ssh -q $server "ps -ef | grep http |grep -v grep && echo $server | wc -l"
done
进行了上述更改,这是输出。
bash-3.00# bash serverlist.sh
resin 9900 612 0 Jul 30 ? 0:00 perl /usr/local/resin-pro-3.0.25/bin/wrapper.pl -chdir -name httpd -class com.c 1
resin 18053 641 0 Jul 30 ? 0:00 perl /usr/local/resin-pro-3.0.25/bin/wrapper.pl -chdir -name httpd -class com.c 1
resin 1768 589 0 Apr 10 ? 0:00 perl /var/resin/wss-stg/bin/wrapper.pl -chdir -name httpd -class com.caucho.ser 1
resin 8568 13119 0 Sep 23 ? 0:00 perl /usr/local/resin-pro-3.0.25/bin/wrapper.pl -chdir -name httpd -class com.c 1
resin 1062 776 0 Sep 16 ? 0:00 perl /usr/local/resin-pro-3.0.25/bin/wrapper.pl -chdir -name httpd -class com.c 1
resin 3539 8290 0 Jul 13 ? 0:00 perl /usr/local/resin-pro-3.0.25/bin/wrapper.pl -chdir -name httpd -class com.c 1
resin 29900 3391 0 Sep 23 ? 0:00 perl /var/resin/wss-prod/bin/wrapper.pl -chdir -name httpd -class com.caucho.se 1
resin 21323 8547 0 Sep 23 ? 0:00 perl /var/resin/wss-prod/bin/wrapper.pl -chdir -name httpd -class com.caucho.se 1
bash-3.00#