2010-08-28 272 views
0

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

  1. 登录到外壳
  2. cd到源/ RED5/DIST
  3. 屏幕
  4. ./red5.sh
  5. CTRL-A然后d脱离
  6. 注销
+1

您可能会发现工具“monit”方便:http://mmonit.com/monit/。顺便说一句,也许你可以将这些步骤压缩到:'ssh [email protected]'cd source/red5/dist && screen。/ red5.sh''? – 2010-08-28 06:42:17

+0

该行是否需要密码或注销命令?我知道0关于shell。 – JJohn 2010-09-22 02:09:00

回答

1

如果你可以编写一个你需要的shell脚本,那么PHP的有exec(),system()passthru()给你。

0

你可以在PHP中使用玉米的工作,并把所有的命令在sh文件并运行这样

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

这样的事情,这将是保存

2

一种简单的方式来实现你想要的是在屏幕上运行此:

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

PHP实际上有执行shell命令的特殊操作,the backtick

`cd source/red5/dist` 

将转到指定的目录。 (但我对壳的了解不多,所以我不能实现你的全部功能。)

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