如何获取 shell 脚本中定义的变量的值?(脚本是一个配置文件,只包含变量定义)我不能在 exec 中使用“source”命令:
echo exec('var=2; echo $var'); //writes "2"
echo exec('source config.sh; echo $var'); //writes ""
如何获取 shell 脚本中定义的变量的值?
userThis 刚刚在终端上为我工作:
echo var=2 > shellscript
echo "<?php echo exec('source /home/user/shellscript; echo $var'); ?>" > phpscript.php
ls | grep script
phpscript.php
shellscript
php phpscript.php
2
所以我写了shellscript,然后是一个php来读取shell脚本并运行php脚本。它做了你想要的。
也许您可以添加其他 exec 组件来获得线索?
<?php
echo exec('source /home/user/shellscript; echo $var',$out,$ret);
echo "\nout0: ". $out[0]. "\nret: $ret\n";
?>
这向我展示了:
~]$ php phpscript.php
2
out0: 2
ret: 0