dtueufe82643
dtueufe82643
2013-08-21 23:27
浏览 46
已采纳

如何从php文件在Linux中执行终端脚本

So I am sorry if I mess up the names a little. I am still pretty new to linux.

I setup a headless raspberry pi webserver. I installed TightVNC Server on it so I could remote in but for the life of me I can't get the damn server to start when my pi reboots.

My work around to this is to have a php script that I can call from the web that executes a terminal script that starts TightVNC. I don't know if it's called terminal script or not but in windows its called a bat file.

Do php files have this permission? If so what is the php command to execute this file?

图片转代码服务由CSDN问答提供 功能建议

所以如果我把这些名字搞砸了,我很抱歉。 我还是Linux新手。

我设置了无头覆盆子pi网络服务器。 我安装了TightVNC服务器,所以我可以远程进入,但是对于我的生活,当我的pi重新启动时,我无法启动该死的服务器。

我的工作是创建一个php脚本,我可以从Web上调用,执行启动TightVNC的终端脚本。 我不知道它是否被称为终端脚本,但在Windows中称为bat文件。

php文件是否拥有此权限? 如果是这样,执行此文件的php命令是什么?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • duaabhuv188411
    duaabhuv188411 2013-08-22 00:17
    已采纳

    To run a shell command with PHP, use shell_exec. It will run as the web user (say, www for Apache), so that user will need to have appropriate permissions. You could, of course, use sudo to get around that - but that is extremely insecure and a very, very bad idea.

    So if you had, e.g. a shell script called shellscript.sh sitting on yoru server, and you've written it to do whatever you need it to do, you could run it in php with:

    shell_exec('sh path/to/shellscript.sh')
    

    However - I'm not sure I correctly understand what you're trying to do, but it seems to me this is a hacky, very inefficient way to go about things, and it's very likely there is a much smoother solution. Even so, good luck.

    点赞 评论

相关推荐