Функция set_current_dir
Функция set_current_dir из модуля std::env
изменяет текущую рабочую директорию процесса.
Параметром функция принимает путь к директории,
в которую нужно перейти. Путь может быть задан
как строкой, так и объектом Path.
Функция возвращает Result: при успешном
изменении директории возвращается Ok(()),
а при ошибке - Err с описанием причины.
Синтаксис
std::env::set_current_dir(path)
Пример
Давайте перейдём в директорию "/tmp"
и проверим, что текущая директория изменилась:
use std::env;
fn main()
{
let res = env::set_current_dir("/tmp");
println!("{:?}", res);
let current = env::current_dir().unwrap();
println!("{:?}", current);
}
Результат выполнения кода:
Ok(())
"/tmp"
Пример
Давайте попробуем перейти в несуществующую директорию и посмотрим, какую ошибку вернёт функция:
use std::env;
fn main()
{
let res = env::set_current_dir("/nonexistent_dir_xyz");
println!("{:?}", res);
}
Результат выполнения кода:
Err(Os { code: 2, kind: NotFound, message: "No such file or directory" })
Смотрите также
-
функция
current_dir,
которая возвращает текущую рабочую директорию -
функция
current_exe,
которая возвращает путь к текущему исполняемому файлу -
функция
temp_dir,
которая возвращает путь к временной директории -
функция
var,
которая возвращает значение переменной окружения