たとえば、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などを含めてもよい。 :)
ベストアンサー1
この~/.local
ディレクトリは次の一部です。システムファイル階層仕様そして拡張ですxdg - ユーザー - ディレクトリ仕様。
Debian 派生パッケージは Bash 4.3 に基づいてリベースするとbash
パスが失われるため、混乱する可能性があります。~/.local
彼らはBash 4.2でそれを持っています。
これは抜け穴、パッチはしばらくDebianシステムにありました。
これ抜け穴~/.local
これがUbuntu 16.04がパスにあり、Ubuntu 17.04ではない理由です。
ユーザーとして実行すると、そのsystemd-path
パスにあるものが表示されます。
$ systemd-path user-binaries
/home/foo/.local/bin
理論的には、あなたの質問に対する答えは次のとおりです。systemd を使用するか、systemd との互換性を維持したいすべてのディストリビューション。
に詳細情報があります。file-hierarchy(7)
。