我编写了一个脚本来检查 Web 服务器(RHEL)的详细信息并将输出保存到文件中。但脚本没有在循环中传递命令 httpd -v 。
这是脚本。
#!/bin/bash
for i in `cat hosts`
do
echo "======$i======" >>/home/user/output.txt;
ssh $i \
'echo -n "Apache version: " ; httpd -v |grep -i Unix; \
echo -n "CPU Info: " ; cat /proc/cpuinfo|grep processor|wc -l; \
cat /proc/meminfo |egrep "MemTotal"; \
cat /proc/meminfo |egrep "MemFree"; \
cat /proc/meminfo |egrep "SwapTotal"; \
cat /proc/meminfo |egrep "SwapFree"; \
echo -n "VM Status: " ; ps -ef |grep -i vmtoolsd|egrep -v grep|wc -l; \
echo -n "Apache config: " ; ls -ltr /etc/httpd/conf/httpd.conf' >>/home/user/output.txt;
done
请帮我修复错误..
答案1
httpd
通常不是默认登录路径中的命令。您最好明确指定可执行文件的完整路径,例如/usr/sbin/httpd
。