他のスクリプトからのみ呼び出すことができるスクリプトをどこに配置しますか?

他のスクリプトからのみ呼び出すことができるスクリプトをどこに配置しますか?

私はいくつかのbashスクリプトで構成された基本的なコマンドラインアプリケーションを作成しました。そのうちの1つはコンピュータのすべてのユーザーが実行するようになっているため、正確な場所です/usr/local/bin/

他のスクリプトはユーザーが直接実行しないでください。最初のスクリプトでのみ呼び出す必要があります。ここでセキュリティは問題ではありません。ユーザーが正確なパスを見つけてそこで実行しようとしても構いませんが、どこからでも呼び出すことができるパスにあることは望ましくありません。

これまでそこに入れたのですが、/usr/sbin/my_app_name/そこに物を入れてはいけないということを知っています。しかし、そのようなスクリプトをどこに置くべきですか?理想的には、my_app_nameスクリプトを含むフォルダを正しい場所に移動したいと思います。

ベストアンサー1

長い話を短く:サポートファイルをに配置/usr/local/lib/my_app_nameし、デフォルトスクリプトをに配置します/usr/local/bin


もちろん、このようなものの標準化はあまりないので、物を置くさまざまな場所について多くのアドバイスが得られます。私は、システムに他のユーザープログラムがインストールされている場所に応じて、このタイプのファイルをまたはに入れること/usr/local/my_app_name/を好みます。/opt/local/my_app_name基本プログラムは/usr/local/binまたはになければなりません/opt/local/bin。セカンダリスクリプトを個別に実行したくない場合は、プライマリスクリプトと同じ場所に配置しないでください。ただし、子会社がそれ自体で完全なモジュール/ライブラリである場合は、次のように表すことができます。その他プログラムを使用する場合は、このような場所が/usr/local/lib適切かもしれません。

後で参考になるように検討してください。ファイルシステム階層標準。提案/usr/localそして/opt(私は/opt/localOSXから入手しました。Macポート)は似ていますが、/optベンダーから入手できる外部パッケージに近いです。たとえば、Intel数学カーネルライブラリにデフォルトでインストールされます/opt/intel/mkl

おすすめ記事