我在中文中使用gnome/Ubuntu-10.10,桌面路徑不是「〜/桌面」,而是「〜/ XXXX」,其中XXXX代表「桌面」。那麼,如何編寫代碼來獲取桌面的正確路徑而不考慮系統語言?我注意到Qt SDK在桌面上正確添加了一個快捷方式,所以我想這是一種方法。非常感謝!如何在gnome中獲取桌面的路徑
7
A
回答
1
我還沒有測試過,但嘗試echo echo ${XDG_DESKTOP_DIR:-$HOME/Desktop}
,這個CMD也許做的工作。
+0
它的工作原理。謝謝! – FlareCat 2010-12-05 09:35:27
4
用戶目錄的位置在xdg-user-dirs規範中有描述。它們提供了一些代碼here,您可以複製該代碼以從代碼中查找桌面目錄的名稱。做
13
另一種方式:
dir=$(xdg-user-dir DESKTOP)
2
echo ${XDG_DESKTOP_DIR:-$HOME/Desktop}
正常工作在本地的Linux驅動器上,也當/home/<user>
被映射到NFS驅動器。
2
如果使用的是油腔滑調,你可以做
const char *desktop_dir = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
這正常注重XDG環境變量和所有。
1
其實,這是最好的答案,xdg-user-dirs specs提供:
test -f ${XDG_CONFIG_HOME:-~/.config}/user-dirs.dirs && source ${XDG_CONFIG_HOME:-~/.config}/user-dirs.dirs
echo ${XDG_DESKTOP_DIR:-$HOME/Desktop}
echo ${XDG_DOWNLOAD_DIR:-$HOME}
這個問題應該是超級用戶 – 2010-12-05 09:20:36
「?如何編寫代碼,以獲得桌面的正確的路徑,無論系統語言的」 - 聽起來像編程給我。 – 2010-12-05 17:20:23