-1

我正在编写一个 PHP 脚本,我必须在其中运行 shell 脚本,

我有 2 个选项:

  1. 如果我能够将 php 变量值发送到 shell
  2. 或者我可以直接用PHP写shell

我用了

shell_exec(dirname(__FILE__) ."/shl.sh");

执行 shell .... 现在的问题是 .. 如果我在 shell 中使用 #!/usr/bin/php 它只会解析其中的代码<?php ?>并直接在屏幕上打印 shell 语句。

4

1 回答 1

1

最好的选择(到目前为止!)是修改外部脚本以接受命令行参数。

所以而不是

shell_exec('sh.sh');

在所有变量都嵌入的地方,将其放入

shell_exec("./sh.sh $opt1 $opt2");

您可以在其中轻松传递变量。

使用这些参数的 bash 脚本示例如下:

#!/bin/bash
echo "My $1 will kick your $2 anytime"

它将用第一个参数替换 $1,用第二个参数替换 $2。

于 2013-09-10T10:06:06.643 回答