現在のユーザーのデスクトップディレクトリパスはどこに保存されていますか?

現在のユーザーのデスクトップディレクトリパスはどこに保存されていますか?

私はLinuxに初めて触れ、すべての基本を学んでいます。これを行ったとき、オペレーティングシステムが特定のファイルを別の方法で処理するのがどれほど奇妙なのかがわかりました。つまり、そのファイルが現在ログインしているユーザーに関連付けられているデスクトップファイルの場合は、GUIデスクトップ環境に表示されます。オペレーティングシステムは、現在のユーザーデスクトップディレクトリのパス変数をどのように知ることができますか?ハッカーの楽しみのためにGUIデスクトップにランダムなディレクトリを表示するように変更できますか?

ベストアンサー1

デスクトップディレクトリのデフォルトパスは言語によって異なります。したがって、システムにこのような状況があるかどうかを$HOME/Desktopよりよく推測できます。xdg-user-dir

$ xdg-user-dir DESKTOP
/home/arnie97/桌面

(パッケージ名はxdg - ユーザーディレクトリS、実行可能ファイル名はxdg-user-目次。この点を指摘してくれた@theDrakeに感謝します。 )


別の方法がありますxdg-user-dirsホームページ、残念ながら私のシステムでは動作しません。

以下は、デスクトップディレクトリとダウンロードディレクトリを見つける方法のシェルスクリプトの例です。

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}

アプリケーションコードの場合、さまざまなデスクトップがそれらを統合し、これらのディレクトリを見つけるための良いAPIを持っていることを願っています。

おすすめ記事