0
該腳本啓動netx服務。預期的行爲是將有一個卡住的進程,所以只要curl不返回0,我們將檢查stuck_pid並殺死它(此時循環將退出,因爲netx應用程序會加載)。換句話說,有一個懸掛pid,導致應用程序掛起,這個腳本修復了這個問題。如何在每次curl在while循環中失敗時返回一條消息?
chown_pid() {
echo `ps aux | grep chown | grep -v grep | awk '{ print $2 }' | sort -r | tail -1`
}
start() {
# Start netx
echo "Starting netx"
/bin/su - -c "cd $NETX_HOME/bin && $NETX_HOME/bin/startup.sh" $NETX_USER
url="http://localhost:8080/matlib"
until curl "$url" --max-time 10; do stuck_pid=$(chown_pid); kill -9 $stuck_pid; "killing chmod process";done
fi
return 0
}
我看到,當我運行此腳本如下:
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
什麼,我想是每一次呼應狀態出捲曲倍,並繼續捲曲,直到捲曲返回0。我在做什麼直到循環錯了?
什麼是{} #stuck_pid的#?另外,我把這條線放在'做stuck_pid'的地方嗎? – david
更多的上下文,我更新OP與chown_pid功能 – david
你可以更新與完整的答案,我不知道如何整合你的答案與我的功能。 – david