Tôi đang viết một tập lệnh bash trong một phiên làm việc bận rộn.
Kịch bản phải khởi tạo một thực thi bên ngoài nhiều lần theo trình tự ở dạng daemonised sau đó theo dõi đầu ra.
while read LINE; do
VARIABLEPARAMETER=`echo "$LINE" | sed -e 's/appropriateregex(s)//'`
externalprog --daemonize -acton $VARIABLEPARAMETER -o /tmp/outputfile.txt
until [ "TRIGGERED" = "1" ]; do
WATCHOUTPUT=`tail -n30 /tmp/outputfile.txt`
TRIGGERED=`echo "$WATCHOUTPUT" | grep "keyword(s)"`
if [ -z "$TRIGGERED" ]; then
PROGID=`pgrep externalprog`
kill -2 "$PROGID"
continue
fi
done
done < /tmp/sourcedata.txt
Câu hỏi của tôi là lệnh nào trong hai vòng lặp sẽ tiếp tục thực thi lệnh?
Dòng đầu tiên trong khi đọc, hoặc tiếp theo, cho đến khi được kích hoạt?
Xin đừng tập trung vào mã thực tế mà tôi đã đưa nó làm ví dụ để cố gắng giải thích câu hỏi này, mã thực tế chi tiết hơn nhiều.