4

好的,所以我有一个在 linux 服务器上执行各种操作的 bash 文件。

我需要将 7-8 个变量传递给 bash 文件,这些变量将由用户在一个简单的网页上设置。

只是想知道这是否可能,还是我需要通过其他语言编写 bash 文件调用脚本?

查看来自http://www.tldp.org/LDP/abs/html/functions.html的 bash 文件上的调用函数,这是正确的行吗?

似乎找不到一个很好的资源来指导我,所以任何链接或示例都值得赞赏

4

2 回答 2

8

如果您在 Web 服务器上运行 PHP,那么您可以将 Web 表单发布到 PHP 脚本,然后使用 PHP 的shell_exec()函数调用您的 bash 脚本并传递输入。正如 paulsm4 上面提到的,任何时候你调用一个 shell 脚本并将输入从 web 传递给一个 shell 脚本,你需要非常小心地清理输入以防止注入类型的攻击。一种方法是在 PHP 脚本中进行所有验证和清理,然后通过 shell_exec() 调用 shell 脚本,以确保您只将干净的输入传递给 shell 脚本。

http://php.net/manual/en/function.shell-exec.php

于 2013-07-21T13:25:30.953 回答
4

是的你可以。您需要“CGI”(通用网关接口)。这是一个巨大的潜在安全风险:小心!

只是谷歌的 CGI bash。例如:

于 2013-07-20T19:14:18.943 回答