救助に行きます。
ps -eo pid,args | awk '/PRD_/ && /startscen\.sh/ && $4 ~ /PROCESS_ALLBETS/'
(画像には がPROCESS_ALLBETS
あるので、テキストには と書かれていますが、実際にはそれが必要だと思いますPROCESS_ALL_BETS
。)
これにより、次のすべての条件に一致するすべての行が印刷対象として選択されます。
/PRD_/
-- 行のどこかに「PRD_」があります。$6 ~ /^-NAME=PRD_/
たぶん、6 番目のフィールドの先頭でのみ一致するように、これを引き締めるでしょう。
/stratscen\.sh/
-- 行のどこかにこの正規表現に一致するものがあります。繰り返しますが、精度を向上させるために、完全一致のみが必要な場合$3 ~ /startscen\.sh/
でも、これを orに変更することをお勧めします。$3 == "startscen.sh"
$4 ~ /PROCESS_ALLBETS/
-- 4 番目のフィールドは、この正規表現と一致します。
上記は、一致するすべての行を単純に出力します。プレフィックスを削除して最初のフィールドと 8 つのフィールドだけを印刷するには、次の-SESSION_NAME=
ようなものを追加します。
{ n=$8; sub(/^-SESSION_NAME=/,"",n); print $1, n }
終了の一重引用符の直前。