从PHP传递到Shell的参数

时间:2019-03-02 18:51:38

标签: php shell parameter-passing

是否可以将参数从 php 传递到 shell 脚本。 例如:

<?php

$var = "testfolder";

shell_exec('sh /path/test.sh');

?>

Shell脚本( test.sh ):

sudo mkdir $var /path/

我希望将php $var中的值导出到Shell脚本中,以便能够创建一个名称与变量中名称相同的文件夹。 这可能吗?

我已经知道如何在字符串中插入变量,但是我不知道如何重写行shell_exec将此变量导出到我的shell脚本中

谢谢!

2 个答案:

答案 0 :(得分:1)

是的。您需要将变量作为参数传递给Shell脚本,然后Shell脚本必须读取其参数。

请检查以下链接:passing a variable from php to bash

答案 1 :(得分:1)

将该变量作为命令行参数传递给Shell脚本。例如:

<?php
$var = "testfolder";
echo 'php: ' . shell_exec("sh ./test.sh $var");
#!/bin/sh
echo "shell: $1"
$ php test.php
php: shell: testfolder

(为清楚起见,我只是在这里回声。)

Shell将命令行参数依次转换为变量$1$2等。