現在のディストリビューションがArchベース、Debianベースなどであるかどうかを確認する方法[重複]

現在のディストリビューションがArchベース、Debianベースなどであるかどうかを確認する方法[重複]

私はさまざまなLinuxディストリビューションで動作するシェルスクリプトを書いています。このスクリプトはディストリビューション固有のパッケージをインストールするので、すべてをハードコードする必要なく(何百ものディストリビューションがあるので)、ディストリビューションの基盤が何であるかを確認したいと思います(そして使用するパッケージマネージャを知る必要があります)。私は見たこと/etc/os-releaseがありますが、いくつかのディストリビューションにはそのファイルがないか、フォーマットが異なると聞きました。そして、それが何に基づいているのか教えてくれません。

ありがとうございます!

答え1

次のファイルの 1 つ以上を読み取ることができます。

/etc/issue

/etc/os-release

/usr/lib/os-release

すべてではなくても、ほとんどのディストリビューションで利用可能でなければなりません(最終的な不在はディストリビューションを識別するためにも使用できます)。

詳細は下記の回答で確認できます「/etc/issue」はすべてのLinuxディストリビューションに共通して適用されますか?

関連情報