用PHP运行shell命令?

时间:2010-08-28 06:15:30

标签: php shell cron red5

偶尔我的媒体服务器出现故障,我想知道是否可以使用php远程启动它来检查端口,如果它没有运行调用cron(或其他方式)来运行shell命令。这是否可能,因为这对我来说不是一个强大的领域。这是我与PuTTy一起使用的过程。

  1. 登录shell
  2. cd to source / red5 / dist
  3. 屏幕
  4. ./ red5.sh
  5. CTRL-A然后D分离
  6. 注销

6 个答案:

答案 0 :(得分:2)

最简单的事情就是编写一个shell脚本。然后是login to remote console via PHP

  • shell_exec:执行shell命令并将输出作为字符串返回。
  • exec:只执行外部程序

答案 1 :(得分:2)

实现目标的简单方法是在屏幕中运行:

while /bin/true ; do ./red5.sh ; done

答案 2 :(得分:1)

如果您可以编写一个可以满足您需要的shell脚本,那么PHP就会为您提供exec()system()passthru()

答案 3 :(得分:1)

PHP实际上有一个特殊的运算符来执行shell命令,the backtick

`cd source/red5/dist`

将转到指定的目录。 (但我对shell知之甚少,所以我无法实现整个事情。)

如果你需要对执行有很大的控制权(我不知道你是否需要),请使用proc_open

答案 4 :(得分:0)

你可以在php上使用corn job并将所有命令放在.sh文件中并像这样运行

59 11 * * 1,2,3,4,5 root命令file.sh?token

像这样的东西,它将是保存

答案 5 :(得分:0)

这里有一个不错的答案,但您应该选择执行red5的init脚本而不是.sh或.bat。这里有预制的初始化脚本:http://code.google.com/p/bigbluebutton/downloads/detail?name=red5&can=2&q=和此处:http://www.videowhisper.com/forum.php?ftid=48&t=init-file-red5-linux-installations-red5-linux-init.d-chkconfig