РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1008 of 1245 menu

Тип ExitStatus

Тип ExitStatus представляет собой статус завершения дочернего процесса. Он возвращается методами status и wait, а также содержится в структуре Output. С помощью этого типа можно узнать, успешно ли завершился процесс, а также получить код его завершения.

Синтаксис

std::process::ExitStatus

Методы

Тип ExitStatus предоставляет следующие методы:

status.success() -> bool status.code() -> Option<i32>

Метод success возвращает true, если процесс завершился успешно. Метод code возвращает код завершения процесса или None, если процесс был завершён сигналом.

Пример

Давайте запустим команду и проверим статус её завершения:

use std::process::Command; fn main() { let status = Command::new("echo") .arg("hello") .status() .unwrap(); println!("{}", status.success()); }

Результат выполнения кода:

true

Пример

Давайте получим код завершения процесса:

use std::process::Command; fn main() { let status = Command::new("echo") .arg("hello") .status() .unwrap(); println!("{:?}", status.code()); }

Результат выполнения кода:

Some(0)

Пример

Давайте запустим команду, которая завершится с ошибкой, и проверим её статус:

use std::process::Command; fn main() { let status = Command::new("ls") .arg("/nonexistent_path_xyz") .status() .unwrap(); println!("{}", status.success()); println!("{:?}", status.code()); }

Результат выполнения кода:

false Some(2)

Смотрите также

  • метод status,
    который запускает процесс и возвращает его ExitStatus
  • метод success,
    который проверяет успешность завершения процесса
  • метод code,
    который возвращает код завершения процесса
  • структура Output,
    которая содержит ExitStatus, stdout и stderr процесса
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить