如何获取shell脚本中定义的变量的值? (脚本是配置文件,只包含变量定义)我不能在exec中使用“source”命令:
echo exec('var=2; echo $var'); //writes "2"
echo exec('source config.sh; echo $var'); //writes ""
如何获取shell脚本中定义的变量值?
答案 0 :(得分:2)
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
所以我写了一些shellcript,然后用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