lsb_release 結果を Bash の文字列と比較できません

lsb_release 結果を Bash の文字列と比較できません

以下の文字列比較で何か間違ったことをしています。変数を設定して比較すると機能しますが、値を文字列にコピーすることはできません。何が間違っているのか知っている人はいますか?

$ if [ "$(lsb_release -i)" = "Distributor ID: RedHatEnterpriseClient" ]; then echo yes; else echo no; fi
no
$ lsb_release -i
Distributor ID: RedHatEnterpriseClient
$ var="$(lsb_release -i)"
$ if [ "$(lsb_release -i)" = "$var" ]; then echo yes; else echo no; fi
yes

ベストアンサー1

この場合は、以下をお勧めします-is

if [ $(lsb_release -is) = "Debian" ]; then echo yes; else echo no; fi

おすすめ記事