Функция current_exe
Функция current_exe из модуля std::env возвращает
полный путь к исполняемому файлу текущей программы.
Она не принимает параметров и возвращает значение типа
Result<PathBuf, Error>. В случае успеха путь обёрнут
в вариант Ok, а при возникновении ошибки возвращается
вариант Err.
Синтаксис
std::env::current_exe()
Пример
Давайте получим путь к текущему исполняемому файлу и выведем его на экран:
use std::env;
fn main()
{
let res = env::current_exe();
println!("{:?}", res);
}
Результат выполнения кода может выглядеть так:
Ok("/home/user/project/target/debug/app")
Пример
Давайте извлечём путь из результата с помощью unwrap
и выведем его как строку:
use std::env;
fn main()
{
let res = env::current_exe().unwrap();
println!("{}", res.display());
}
Результат выполнения кода может выглядеть так:
"/home/user/project/target/debug/app"
Пример
Давайте обработаем возможную ошибку без паники
с помощью конструкции match:
use std::env;
fn main()
{
match env::current_exe()
{
Ok(path) => println!("{}", path.display()),
Err(e) => println!("error: {}", e),
}
}
Результат выполнения кода может выглядеть так:
"/home/user/project/target/debug/app"
Смотрите также
-
функция
current_dir,
которая возвращает текущую рабочую директорию -
функция
set_current_dir,
которая меняет текущую рабочую директорию -
функция
temp_dir,
которая возвращает путь к временной директории -
функция
args,
которая возвращает аргументы командной строки