Я хочу извлечь столбец dispstatus из команды ниже, и если все записи ЗЕЛЕНЫЕ, тогда я должен выйти из l oop.
sapcontrol -nr 01 -function GetProcessList
17.02.2020 01:40:34
GetProcessList
OK
name, description, dispstatus, textstatus, starttime, elapsedtime, pid
disp+work, Dispatcher, GREEN, Running, 2020 02 16 03:50:28, 21:50:06, 59404
igswd_mt, IGS Watchdog, GREEN, Running, 2020 02 16 03:50:28, 21:50:06, 59405
gwrd, Gateway, GREEN, Running, 2020 02 16 03:50:30, 21:50:04, 59423
icman, ICM, GREEN, Running, 2020 02 16 03:50:30, 21:50:04, 59424
На данный момент я использовал команду ниже, где вместо Получая все значения, я проверяю количество ЗЕЛЕНЫХ и завершаю работу, что в настоящее время не то, что я намерен сделать. Не могли бы вы помочь мне?
while true ; do status=`sapcontrol -nr 01 -function GetProcessList |awk -F ',' '{if ($3) print $3;}'|grep -i GREEN | wc -l`; sleep 2; if [[ $status -ge 2 ]]; then break ;fi; done
РЕДАКТИРОВАТЬ: некоторые команды в разных строках.
while true ; do
status=`sapcontrol -nr 01 -function GetProcessList |
awk -F ',' '{if ($3) print $3;}'|
grep -i GREEN |
wc -l`
sleep 2
if [[ $status -ge 2 ]]; then
break
fi
done
Спасибо, Anup