如何在macOS上使用dart运行shell命令

vlf7wbxs  于 2023-02-09  发布在  Shell
关注(0)|答案(1)|浏览(198)

我使用Dart process在macOS上制作shell命令。我使用Flutter制作macOS应用程序。现在我想从应用程序运行shell命令。

    • 运行应用程序的命令**
/Users/lihongjun/shell/libs/zipalign -v 4 "/Users/lihongjun/Downloads/app-release.apk" "/Users/lihongjun/Documents/test/tempApk/app_aligned.apk" ,
    • 错误:**
sh: /Users/Shared/shell/libs/zipalign: Operation not permitted

我已经搜索了很多,但我不能解决这个问题,如进程_runner, shell ,系统插件。
如果我在Mac的终端上执行shell,它工作得很好。

bool rsult = System.invoke('/Users/Shared/shell/libs/zipalign -v 4');
print('result:$rsult');
ProcessCmd cmd = ProcessCmd('java', ['-version'],runInShell: false,);
runCmd(cmd).then((value) {
  print(value.stdout.toString());
});

现在我想在Dart代码中使用相同的代码来生成shell命令。
我该怎么做?谢谢!

o4tp2gmn

o4tp2gmn1#

由于您使用的是Flutter,因此这可能对您没有什么帮助,但要回答标题中的问题(对于那些无意中编写非Flutter应用程序的人),您应该看看dart:io库及其run方法:
https://api.dart.dev/stable/dart-io/Process/run.html
启动流程并以非交互方式运行该流程直至完成。可以使用指定的参数执行流程运行。

相关问题