将变量从php传递给shell脚本

时间:2012-12-07 07:31:06

标签: php expect shell-exec

这是我的PHP代码:

<?php
$var1="hello.txt";
exec("expect /home/foo.sh $var1");
?>

和我的shell脚本:

spawn su -s /bin/bash root -c "/usr/bin/gpg --output /home/$1.gpg --encrypt --recipient sampleonly@yahoo.com  /home/$1"
expect "Password:"
send "mypassword\r"
expect "*complete*"

它没有得到我的变量

1 个答案:

答案 0 :(得分:0)

你必须将你的参数分配给这样的变量:

Shell脚本:

set name [lrange $argv 0 0]
send -- "Hello $name"

终端命令:

expect hello.sh Benjamin

结果:

Hello Benjamin