ksh if文の構文

ksh if文の構文

if何かを変えるたびに、別のものが間違っているようです。問題が見えますか?

if [[ $(ps -ef | grep "Process" | grep -v "grep" | awk '{print $2}') = '' ]]; then
        echo "bien"
fi

わかりました。launcher.sh[74]: 11927676^J15335522: syntax error

ベストアンサー1

「Process」が固定文字列の場合は、以下を試してください。

ps -ef | awk '/[p]rocess/ {print $2}'

プロセスIDを取得します。

欠落しているプロセスを確認する場合(... = '')

if ps -ef | grep -q [P]rocess
then 
   echo Process present
else
   echo Process absent
fi

以下を見ることもできますpgrep(1)(例man pgrep:)。

おすすめ記事