/bin/ps -aux | /bin/grep -c "blynk"
私のボックスでは、blynkサーバーが実行されていないため、コードは1を返します。
しかし、bashファイルで同じコードを実行すると、4が返されます。どうやってこれが起こったのですか?
#!/bin/sh
stat=`/bin/ps -aux | /bin/grep -c "blynk"`
if [ $stat -lt "2" ]; then
echo not running
else
echo running
date
fi
ベストアンサー1
grep
自分がそれを見つけられないようにする必要があります。簡単な方法は次のとおりです。
/bin/ps -aux | /bin/grep -c "[b]lynk"
これにより、コマンドラインに含めずにgrep
検索できます。または同時実行をblynk
防ぎます。grep
/bin/ps -aux >ps.txt
/bin/grep -c "[b]lynk" ps.txt
もちろん、grepコマンドラインをまったく使用しない方が合理的です。 fileで開くエディタも見つかるからですREADME.blynk
。
pgrep
したがって、出力を使用または変更してps
コマンド名またはコマンドパスに制限することをお勧めします。