하나의 pid가 관련되어 있으면 프로그램을 다시 시작하려고합니다 (두 개의 pid가 있어야 함). 그것이 두 개 이상이면 괜찮습니다. 배쉬 스크립트를 작성하려고했지만 제대로 작동하도록 고심하고 있습니다.이 코드는 fr이므로 누구나 목표를 달성하도록 도울 수 있습니까?
#! /bib/bash
pgrepRes=($(pgrep deluge))
if ["${#pgrepRes[@]}" -ne "2"];
then
kill ${pgrepRes[0]};
fi
deluge
그러나 나는이 결과를 얻고있다 :
보시다시피 Deluge와 관련된 pid의 수를 확인했습니다.
미리 감사드립니다. 내가 충분히 명확 해지기를 바랍니다. 그렇지 않으면 물어보십시오 :)
@Hastur 답변으로 내 코드를 수정할 수 있습니까? 감사합니다
—
FabioEnne
무언가가 작동하지 않으면 구성 요소로 나눕니다. 귀하의 문제는 주위에 공백의 부족
—
CVn
[
과 ]
. 호출과는 아무런 관련이 없습니다 kill
.
나는 심지어 당신의 목적에 부합하지 않는다고 생각합니다
—
Hastur
-ne 2
. 당신은 -lt 2
덜 사용 하고 평등 하지 않아야합니다 -ne
... Bash Beginners Guide 에서 영감을 얻는 것이 좋습니다 .
$(pgrep deluge | wc -l)
. 줄 수와pkill deluge
if 문 내부를 제공해야합니다. 공백을 추가하십시오[ whatever is ]
. 절대[withoutspaces]