我正在尝试在MacOS X上使用applescript构建自动构建脚本.
现在,一切正常,只有一个小故障.
如果我在一个单独的告诉应用程序“ Terminal”中运行它,则命令“ do script(“ zipalign -f -v 4 /tmp/src.apk /tmp/tgt.apk”)可以正常工作,但在打开终端窗口时脚本中的其他所有内容都可以很好地告诉应用程序“ Finder”.
如果我尝试通过告诉“ Finder”中的“ do shell script”运行命令,则只会收到错误“找不到命令”.
zipalign的路径在/ etc / paths中设置,并且可以通过任何终端窗口和“ do shell”访问,但不能通过“ do shell script”命令访问.
确保“ do shell脚本”使用$PATH查找命令的正确方法是什么,或者是否存在一种防d方法来关闭“ do script”留下的终端?
解决方法:
当您将bash作为交互式登录shell调用时,/ etc / paths和/etc/paths.d/*中的路径由/usr/libexec / path_helper添加到PATH,该路径从/ etc / profile运行. do shell脚本以sh和非交互非登录shell(不读取/ etc / profile)的形式调用bash.
您可以通过以下方式手动运行path_helper:
do shell script "eval `/usr/libexec/path_helper -s`; echo $PATH"
总结 以上是内存溢出为你收集整理的android-AppleScript“执行shell脚本”忽略PATH变量全部内容,希望文章能够帮你解决android-AppleScript“执行shell脚本”忽略PATH变量所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)