例:Ubuntuには、常に.local
があります ホームディレクトリのディレクトリと.profile
この行が含まれています:
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
$HOME/.local/bin
デフォルトでは存在しませんが、作成されている場合は、すでに$PATH
にあります。 内の実行可能ファイルを見つけることができます。
これはXDGディレクトリ仕様では正確に言及されていませんが、それから派生しているようです。
私が疑問に思うのは、これが十分に一般的であり、通常、最も一般的なエンドユーザーディストリビューションに存在すると想定できるかどうかです。たとえば、すべてのDebian派生物、または少なくともUbuntuの派生物ですか? Red Hat / Fedora / CentOSエコシステムはどうですか? Arch、Suse、そして人々が今日使用しているものなどについても同様です。
さらに明確にするために、これは$HOME/.local/bin
専用です 、ない $HOME/bin
。
好奇心から、情報があればBSD、OS/Xなどを自由に含めてください。 🙂
承認された回答:
~/.local
ディレクトリはsystemdファイル階層仕様の一部であり、xdguser-dirs仕様の拡張です
bash
用のDebian派生パッケージとして混乱する可能性があります ~/.local
を失いました 彼らがbash4.3にリベースしたときのパスは、bash4.2にありました。
これはバグであり、パッチは少しの間Debianシステムに置かれています。
このバグが、Ubuntu 16.04のパスに〜/ .localが含まれていて、Ubuntu17.04には含まれていない理由です。
systemd-path
を実行する場合 ユーザーとして、パス内にあることが意図されていることがわかります。
$ systemd-path user-binaries
/home/foo/.local/bin
理論的には、クエリに対する答えは、 systemdを使用する、またはsystemdとの互換性を維持したいディストリビューションです。
file-hierarchy(7)
に詳細があります