【发布时间】:2015-04-25 21:34:23
【问题描述】:
Process.run(和所有变体)抱怨使用“。”和“源”命令。是否有内置方法可以使用 run 方法执行此操作,或者我可以尝试调用一个特定的可执行文件来模拟 bash 的源命令?
【问题讨论】:
-
我不知道 dart,但是在简要阅读文档之后,我很清楚
Process.run在非 shell 上下文中直接调用该过程。如果你想source,你需要做的是调用shell解释器,例如,bash,所以你需要运行bash -c 'blah blah',或者把source和其他命令放在一个shebanged的可执行脚本中,然后运行它脚本。 -
source(又名.)命令在当前shell中运行一个脚本。由于 dart 不是 shell,因此该命令在这种情况下没有多大意义。你到底想完成什么? -
@GordonDavisson 他可能只是想导出一些环境变量。
-
我需要获取的脚本确实导出了一些环境变量,特别是向 $PATH 添加了一些新程序。我的目标是能够通过我的 Dart 应用程序以编程方式获取此脚本,以便我可以在添加到 $PATH 的新程序上调用 Process.run()。