繁体   English   中英

使用php运行bash脚本

[英]Running a bash script using php

我正在尝试使用php从html文件运行bash脚本。 我已经读过这个问题( 如何从php运行.sh文件? ),并严格按照它进行操作,但似乎无法使其正常工作。

我的Mac上的downloads文件夹中有两个文件。 这些是文件名及其内容:

你好

#! /bin/bash
echo hello world

test.php

<?php
echo shell_exec('sh /Users/steve/downloads/hello.sh');
?>

我在downloads文件夹中的命令行中运行了此命令:

php test.php

这导致在chrome中打开一个空白页面,而我期望得到的页面中带有“ hello word”。

我也想知道如何让我的php代码像html文件一样在chrome中打开一个窗口。 例如,如果我在命令行中输入以下内容:

open test.html

在chrome中打开一个新窗口,运行test.html的内容。

谢谢您的帮助。

这是一个示例,说明如何创建一个名为“ test.php”的.php文件,该文件运行一个名为“ hello.txt”的shell脚本。

这是“ test.php”中的代码。 您可以将此代码放在任何目录中,并且应该可以正常工作。

<?php
echo shell_exec('./hello.sh');
?>

这是“ hello.sh”中的代码。 您可以将此代码放在任何目录中,只要它与“ test.php”位于同一目录中即可。

#! /bin/bash
echo hello world

制作完这两个文件后,请使用命令行进入其目录并输入以下命令:

chmod +x hello.sh
php test.php

第一个命令(我认为)使“ hello.sh”可从“ test.php”访问。 您只需要这样做一次。 第二个命令运行test.php并应返回“ hello world”。

这也可以与Shell脚本以外的程序一起使用。 例如,您可以将cpp文件编译为a.out(已编译的c ++文件的默认名称),然后通过替换echo shell_exec('./ hello.sh')从php文件运行它。 与回声shell_exec('./ a.out');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM