0

motd でシステムの状態を簡単に把握できるようにしたいと考えています。ATM デーモンが実行されているかどうかを確認し、そのステータスに応じて色を付けようとしています。

通常、入力すると、含まれているかどうかを確認するところまで取得したdeamon_name statusようなものが出力されます。それはうまくいきました。Deamon_name running / not runningNot

しかし、実際にログインしてMOTDをトリガーすると、間違った情報が得られることに気付きましたdash.bashやシェルではなく、使用する必要があることに気付きました。そして今、私の比較機能はもう機能しません。

if [[ $Server_name =~ .*Not.* ]]
    then 
        printf "NOT RUNNING";
    else 
        printf "RUNNING";
fi

これは私の比較機能とチェックです(後で赤/緑の色を追加したい)

$Server_nameNot running.またはrunning

4

2 に答える 2

0

Server Runninginit スクリプトの全体または文字列を比較して解決しましたNot Running。これらのメッセージとダッシュが拡張機能をサポートしていないことはわかっているため、これは適切なようです。

if [ "$ServerName" = "Not running." ]                # I know those messages
    then 
        printf '%b' "\033[31;1mNOT RUNNING\033[0m"   # print NOT RUNNING in red
    else 
        printf '%b' "\033[32;1mRUNNING\033[0m"       # print RUNNING in greend
fi

printf "\n"
于 2014-12-12T10:18:20.697 に答える