RHEL / RPMベースのディストリビューションで実行されていることを検出するスクリプトを作成しようとしています。
dpkg
私は2つを同時にインストールするように構成された奇妙なシステムを見つけました。rpm
which rpm
私はこれを試みます:
if [[ "$(cat /etc/*[_-][rv]e[lr]*)" == (CentOS|Fedora) ]]; then
#...
fi
ただし、これを行うには、すべてのRHEL / RPMベースのディストリビューションの名前を知る必要があります。
ベストアンサー1
目標がrpm
システムにパッケージマネージャを持っているかどうかを検索することであれば、RPMパッケージデータベースが空でないことは良い経験的な方法です。
if [ -n "$(rpm -qa)" ] 2>/dev/null; then
echo "This looks like an rpm-based system"
else
echo "Either there is no rpm command, or the rpm package database has no entries"
fi