【发布时间】:2012-07-29 01:13:08
【问题描述】:
shell_exec 是否可以执行给定的命令,其中初始命令会要求动态输入,然后是基于输入本身的命令。
我已经研究了几个小时来寻找答案,但我似乎找不到我要找的东西。
我有一个类似于下面示例的想法的要求,任何帮助将不胜感激,因为
$x = shell_exec("read -p 'Enter your name : ' x; echo 'Your name is' : $x");
回显 x 输出:
你的名字是
如您所见,我正在运行多个命令,但我不知道可以在输入字符串命令中的何处插入。
注意: 我试着做
$x = shell_exec("echo 'Foo' | read -p 'Enter your name : ' x; echo 'Your name is :' $x");
echo $x;
输出是:
你的名字是:
我期待
你的名字是:Foo
很明显,出了点问题。
【问题讨论】:
-
你到底想运行什么shell命令?
-
你需要在字符串
$x = shell_exec("read -p 'Enter your name : ' x; echo 'Your name is' : \$x");中转义$x -
我尝试在 $x 之后添加 \,输出是“你的名字是:$x”
-
@Dagon 它很长,与织物脚本(python)和php有关,基本上,这个想法是在我运行该脚本之后,服务器会在初始shell命令后询问我用户密码,这必须从 php 运行,因为我将为命令提供动态数据(将变量连接到命令字符串)
标签: php input shell-exec