【发布时间】:2012-02-05 18:01:49
【问题描述】:
我正在编写一个 Perl 脚本来检查当前是否为 Apache 安装了一个模块。在 Bash 中,我会使用:
# httpd -M | grep fcgid
Syntax OK
fcgid_module (shared)
如果该模块存在,我希望它返回值 TRUE,如果不存在,则返回 FALSE。我遇到了一个问题,因为 httpd -M 总是输出“语法正常”。
这是我到目前为止所得到的:
#!/usr/bin/perl
my $FCGID = "";
if (`httpd -M | grep fcgid`) {
$FCGID = "enabled"
} else {
$FCGID = "disabled"
}
尽管如此,IF 始终评估为 true。
关于我的配置:
x86_64 GNU/Linux
# cat /etc/redhat-release
CentOS release 6.2 (Final)
# httpd -v
Server version: Apache/2.2.15 (Unix)
# perl -v
This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi
接受建议。我是 Perl 的新手,但在 Bash 脚本方面还是个新手。
【问题讨论】:
标签: linux perl apache bash centos