Как я могу получить текущий путь пользователя в Linux? Это может быть либо с API-интерфейсом GTK + framework, либо с простым C++.Текущий путь пользователя в Linux?
3
A
ответ
1
Если вы хотите, чтобы получить домашний каталог использовать getenv("HOME")
4
Предполагая, что вы имеете в виду текущий каталог процесса:
- Равнина функция POSIX C является
getcwd()
. - В glib, есть также
g_get_current_dir()
.
1
Не уверен, хотите ли вы содержимое $ PATH или текущего рабочего каталога пользователя. Однако, чтобы покрыть оба варианта ...
PATH является переменной окружения, так что вы можете получить доступ к этому с getenv()
, в данном случае getenv("PATH")
, и определяется в <stdlib.h>
.
Текущий рабочий каталог можно получить с помощью getcwd()
и определяется в <unistd.h>
.
2
g_get_home_dir()
из Glib более кросс-платформенный, чем getenv("HOME")
. Он также предпочитает записи/etc/passwd над переменной HOME по разным причинам, обсуждаемым на aforementioned link.
http://stackoverflow.com/questions/143174/cc-how-to-obtain-the-full-path-of-current-directory – Manu 2010-12-15 10:58:40