使用来自php的shell脚本生成android apk?

Kee*_*san 17 php linux bash shell android

我正在尝试apk从shell脚本生成Android 文件,我想从PHP执行一个shell脚本文件.当我在终端中运行shell脚本时,它完美地运行.如果我尝试使用PHP运行脚本,则shell脚本不会执行所有命令.shell脚本中的ls命令工作正常,但在使用PHP执行时,其他命令不起作用.我在Linux环境中使用xampp服务器.

我的shell脚本

cd /home/user/AndroidStudioProjects/msvep4247-inghamautogroup-pulse-and/
./gradlew assembleDebug
cp -fr app/build/outputs/apk/app-debug.apk /opt/lampp/htdocs/sample/apk
ls
Run Code Online (Sandbox Code Playgroud)

Shell脚本ls输出

app autolead_data_format.pdf build build.gradle cheek gradle gradle.properties gradlew gradlew.bat lib local.properties msvep4247-inghamautogroup-pulse-and.iml settings.gradle

我的PHP脚本

   <?php
      echo shell_exec('ls');
      echo shell_exec('./generateApk.sh');
   ?>
Run Code Online (Sandbox Code Playgroud)

PHP脚本ls输出

generateApk.sh generate.php APK

注意:ls输出文件夹中的文件名

我在xampp服务器中设置了shell脚本的所有文件权限.任何人都可以描述我错在哪里吗?等待回复......

TMS*_*TMS 11

只需使用脚本/可执行文件的完整路径,因为从php运行时环境不同.

  • 如果您不想对路径进行硬编码,可以使用[dirname](http://php.net/manual/en/function.dirname.php) - `dirname(__ FILE __)` (3认同)