sh: ip: command not found centos

4

我正在调试一些代码,发现以下这行可能导致我的php日志出错:sh: ip: command not found 你有什么想法或者是缺少了哪些Centos服务器的软件包呢?

代码:

exec("ip tunnel show | cut -f1 -d' ' | cut -f1 -d':'", $someVar);

2个回答

6

添加路径:用/sbin/ip替换ip


1
为什么我们需要特别指定? - saravanakumar

4

'ip'命令位于sbin目录中,该目录可能不在您的PATH环境变量中。还有可能有更多这样的命令没有其路径部分包含在PATH环境变量中。您需要按照以下步骤将/sbin设置为您的路径。

在您的shell脚本中,在您的exec()行之前添加以下两行,然后是您的exec行:

exec("PATH=\$PATH:/sbin ip tunnel show | cut -f1 -d' ' | cut -f1 -d':'", $someVar);

哦,我错过了这是PHP代码。感谢指出!那么这是建议的代码行:exec("PATH=$PATH:/sbin ip tunnel show | cut -f1 -f' ' | cut -f1 -d':'", $someVar) - Prasanna

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接