dart:io
库中Process.run
方法的用法介绍如下。
用法:
Future<ProcessResult> run(
String executable,
List<String> arguments,
{String? workingDirectory,
Map<String, String>? environment,
bool includeParentEnvironment = true,
bool runInShell = false,
Encoding? stdoutEncoding = systemEncoding,
Encoding? stderrEncoding = systemEncoding}
)
启动一个进程并以非交互方式运行它直到完成。进程运行是 executable
和指定的 arguments
。
使用workingDirectory
设置进程的工作目录。请注意,在某些平台上执行进程之前会发生目录更改,这可能会在使用可执行文件和参数的相对路径时产生影响。
使用environment
设置进程的环境变量。如果不设置,则继承父进程的环境。目前只支持US-ASCII环境变量,如果传入code-points超出US-ASCII范围的环境变量,很可能会出错。
如果 includeParentEnvironment
是 true
,则进程的环境将包括父进程的环境,以 environment
优先。默认为 true
。
如果runInShell
为真,该进程将通过系统 shell 生成。在 Linux 和 OS X 上,使用 /bin/sh
,而在 Windows 上使用 %WINDIR%\system32\cmd.exe
。
用于将 stdout
和 stderr
解码为文本的编码由 stdoutEncoding
和 stderrEncoding
控制。默认编码是 systemEncoding 。如果使用null
,则不会发生解码,ProcessResult
将保存二进制数据。
返回一个Future<ProcessResult>
,它以运行进程的结果结束,即退出代码、标准输出和标准输入。
以下代码使用Process.run
在Linux 上的test.dart
文件中查找main
。
var result = await Process.run('grep', ['-i', 'main', 'test.dart']);
stdout.write(result.stdout);
stderr.write(result.stderr);
相关用法
- Dart Process.start用法及代码示例
- Dart Process用法及代码示例
- Dart Point用法及代码示例
- Dart PluginArray.last用法及代码示例
- Dart Point.magnitude用法及代码示例
- Dart Point.operator_minus用法及代码示例
- Dart Platform.localeName用法及代码示例
- Dart Point.distanceTo用法及代码示例
- Dart Point.operator_equals用法及代码示例
- Dart Point.squaredDistanceTo用法及代码示例
- Dart Pattern.matchAsPrefix用法及代码示例
- Dart Pattern.allMatches用法及代码示例
- Dart Point.operator_plus用法及代码示例
- Dart Platform用法及代码示例
- Dart PluginArray.elementAt用法及代码示例
- Dart Point.operator_multiply用法及代码示例
- Dart PluginArray.first用法及代码示例
- Dart PluginArray.length用法及代码示例
- Dart MapMixin.containsKey用法及代码示例
- Dart Iterator用法及代码示例
- Dart AttributeClassSet.intersection用法及代码示例
- Dart num.sign用法及代码示例
- Dart TransformList.last用法及代码示例
- Dart FileList.first用法及代码示例
- Dart CanvasRenderingContext2D.drawImageScaledFromSource用法及代码示例
注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 run method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。