ホストバージョンとOSタイプの確認[冗長]

ホストバージョンとOSタイプの確認[冗長]

すべてのサーバーに対してパスワードなしの認証を実行する管理サーバーの入力に基づいて、Red HatおよびSUSEサーバーの展開を取得しようとしています。エラーや出力は発生しません。以下のコードは次のとおりです。

version()
{
SERVERS='/HOME/servers' 
read -p $'Enter the server name:\n' server_name
EXIST=`cat $SERVERS|grep -i $server_name|wc -l`
if [ $EXIST -gt 0 ];then
RELEASE1='ssh -q -o "StrictHostKeyChecking no" "$server_name" cat /etc/issue'
COUNT1=`ssh -q -o "StrictHostKeyChecking no" "$server_name" cat /etc/issue|wc -l`
VERSION1=`ssh -q -o "StrictHostKeyChecking no" "$server_name" cat /etc/issue|awk '/Red/ && /Hat/'`
COUNT2=`ssh -q -o "StrictHostKeyChecking no" "$server_name" cat /etc/issue|awk '/Red/ && /Hat/'|wc -l`

if [[ -f $RELEASE1 && -s $RELEASE1 ]];then
    if [ $COUNT1 -gt 0 ];then
        echo -e " $RELEASE1 "
    elif [ $COUNT2 -gt 0 ];then
        echo -e " $VERSION1 "

    else
        echo "                  "
 fi

それ以外の場合は「」をエコーし​​ます。

フィリピン諸島

ベストアンサー1

10行目にはバックティックが2つあります。構文チェックには常に次のものを使用できます。住宅検査

$(...)古代のバックティック形式の代わりにコマンド置換を使用することをお勧めします(そして読みやすい)。

ちなみに、または/etc/issue同じファイルを解析する代わりに、インストールを介してリリースと配布情報を取得します。/etc/redhat-releaselsb_release

おすすめ記事