私はさまざまなLinuxディストリビューションで動作するシェルスクリプトを書いています。このスクリプトはディストリビューション固有のパッケージをインストールするので、すべてをハードコードする必要なく(何百ものディストリビューションがあるので)、ディストリビューションの基盤が何であるかを確認したいと思います(そして使用するパッケージマネージャを知る必要があります)。私は見たこと/etc/os-release
がありますが、いくつかのディストリビューションにはそのファイルがないか、フォーマットが異なると聞きました。そして、それが何に基づいているのか教えてくれません。
ありがとうございます!
答え1
次のファイルの 1 つ以上を読み取ることができます。
/etc/issue
/etc/os-release
/usr/lib/os-release
すべてではなくても、ほとんどのディストリビューションで利用可能でなければなりません(最終的な不在はディストリビューションを識別するためにも使用できます)。
詳細は下記の回答で確認できます「/etc/issue」はすべてのLinuxディストリビューションに共通して適用されますか?。