Метод run
Future<ProcessResult> run(Запускает процесс и выполняет его в неинтерактивном режиме до завершения. Запускаемый процесс executable со следующими arguments.
Используйте workingDirectory для установки рабочей директории для процесса. Обратите внимание, что смена директории происходит до выполнения процесса на некоторых платформах, что может повлиять при использовании относительных путей для исполняемого файла и аргументов.
Используйте environment для установки переменных окружения для процесса. Если не указано, то используется окружение родительского процесса. В настоящее время поддерживаются только переменные окружения US-ASCII, и вероятны ошибки, если передается переменная окружения с кодовыми точками за пределами диапазона US-ASCII.
Если includeParentEnvironment равно true, окружение процесса будет включать окружение родительского процесса, с environment имеющим приоритет. По умолчанию true.
Если runInShell равно true, процесс будет запущен через системную оболочку. В Linux и OS X используется /bin/sh, а в Windows используется %WINDIR%\system32\cmd.exe.
Кодировка, используемая для декодирования stdout и stderr в текст, управляется stdoutEncoding и stderrEncoding. По умолчанию используется кодировка SYSTEM_ENCODING. Если используется null, декодирование не будет происходить, и ProcessResult будет содержать бинарные данные.
Возвращает Future<ProcessResult>, который завершается с результатом выполнения процесса, т.е. кодом выхода, стандартным выводом и стандартным вводом.
Следующий код использует Process.run для поиска main в файле test.dart в Linux.
Process.run('grep', ['-i', 'main', 'test.dart']).then((result) {
stdout.write(result.stdout);
stderr.write(result.stderr);
});
Источник
external static Future<ProcessResult> run(
String executable, List<String> arguments,
{String workingDirectory,
Map<String, String> environment,
bool includeParentEnvironment: true,
bool runInShell: false,
Encoding stdoutEncoding: SYSTEM_ENCODING,
Encoding stderrEncoding: SYSTEM_ENCODING});
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-io/Process/run.html