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
: ).
답변2
KSH의 비교에는 두 개의 등호가 필요합니다.==
if [[ $(ps -ef | grep "Process" | grep -v "grep" | awk '{print $2}') == '' ]]; then
echo "bien"
fi