当前位置: 首页 > 面试题库 >

如何从PHP检查shell命令是否存在

胥英奕
2023-03-14
问题内容

我需要这样的东西在PHP:

If (!command_exists('makemiracle')) {
  print 'no miracles';
  return FALSE;
}
else {
  // safely call the command knowing that it exists in the host system
  shell_exec('makemiracle');
}

有什么解决办法吗?


问题答案:

在Linux / Mac OS上,请尝试以下操作:

function command_exist($cmd) {
    $return = shell_exec(sprintf("which %s", escapeshellarg($cmd)));
    return !empty($return);
}

然后在代码中使用它:

if (!command_exist('makemiracle')) {
    print 'no miracles';
} else {
    shell_exec('makemiracle');
}

更新: @ camilo-martin建议,您可以简单地使用:

if (`which makemiracle`) {
    shell_exec('makemiracle');
}


 类似资料:
  • 在Unix shell脚本中,我想通过if语句检查diff命令的输出是否等于0。这样我就可以相应地给出if case语句。 例如:Abc.sh 输出:

  • 问题内容: 理论上听起来很简单,但是我已经做了很多研究,但很难弄清楚。 我如何检查MySQL表是否存在以及它是否在执行某些操作。(我猜一个简单的php if / else语句可以解决这个问题) 有没有办法做到这一点? 这是我对cwallenpoole的响应所做的: 问题答案: 诚然,它比Python惯用语言更具有Python风格,但另一方面,您不必担心要处理大量额外数据。 编辑 因此,截至我撰写此

  • 问题内容: 如何检查PHP中是否存在URL(非404)? 问题答案: 这里: 在这里和上面帖子的下面,有一个curl解决方案:

  • 问题内容: 查找进程aa.sh是否正在运行的linux命令是什么。ps命令似乎不起作用,并且不显示Shell脚本名称。 请指教。 问题答案: 检查一下

  • 问题内容: 我有一个使用Python编写的守护程序。运行时,它的PID文件位于/tmp/filename.pid。如果守护程序未运行,则PID文件不存在。 在Linux上,如何检查以确保PID文件存在,如果不存在,请执行命令将其重新启动? 该命令将是 必须从特定目录执行。 问题答案: 检查给定路径是否存在并且是常规文件(仅检查路径是否存在) 在执行测试并返回成功,否则 的是C状,因此,如果左侧的命

  • 本文向大家介绍PHP和Shell实现检查SAMBA与NFS Server是否存在,包括了PHP和Shell实现检查SAMBA与NFS Server是否存在的使用技巧和注意事项,需要的朋友参考一下 通常会通过 /etc/fstab 来处理挂载的设置,然后再使用 mount -a 来重新确认挂载,最好在排程的程序用到挂载目录时也执行一次 mount -a,挂载目录在断线后是不会自动回复的,mount