从PHP(Localhost、Mac OSX)执行shellscript

从PHP(Localhost、Mac OSX)执行shellscript,php,macos,shell,localhost,mamp,Php,Macos,Shell,Localhost,Mamp,我想使用Mac上的MAMP从本地主机上的基于php的网站运行一个shell脚本,但不幸的是,它不起作用 以下是shell脚本: #!/bin/bash open /Users/my_username/Desktop/aiSee.app 如果我从终端运行它,它可以正常工作并打开应用程序。在我的网站中使用此代码时,它不起作用: <?php echo exec('script.sh'); ?> 没有显示任何错误或内容,只是不起作用。 该脚本与网站的.php文件位于同一个源代

我想使用Mac上的MAMP从本地主机上的基于php的网站运行一个shell脚本,但不幸的是,它不起作用

以下是shell脚本:

#!/bin/bash
open /Users/my_username/Desktop/aiSee.app
如果我从终端运行它,它可以正常工作并打开应用程序。在我的网站中使用此代码时,它不起作用:

<?php 
    echo exec('script.sh');
?> 
没有显示任何错误或内容,只是不起作用。 该脚本与网站的.php文件位于同一个源代码中。

在bash中打开并不会像您认为的那样。您需要的是cat:


你的问题解决了吗? 如果没有,请尝试echo exec'sh script.sh';或者echo exec'bash script.sh';。
这个问题可能会解决你的问题:

非常感谢,我已经试过了,但也不管用。我不是一个终端专业人士,但是cat不是用来连接文件的吗?cat也是用来列出文件的。您的shell文件是否具有“+x”权限?如果运行_script.sh会发生什么?它有+x权限,由chmod+x sript.sh完成。如果我试图从终端执行它,ist会显示/Users/../aiSee.app是一个目录。用open代替cat,它实际上打开了aiSee应用程序。在操作系统中运行的localhost MAMP和本机shell之间是否可能存在问题?/Users/../aiSee.app是一个目录?好的,首先你到底想要实现什么?我真的想要打开aiSee。这是一个能够绘制图形的应用程序。其目的是从一个webapplication运行它,localhost现在还可以,我认为,最简单的方法是通过一个shell脚本来实现。事实上,如果一切都在服务器上正常运行,脚本将在那里执行。
#!/bin/bash
cat /Users/my_username/Desktop/aiSee.app