para obter a coluna, use um loop
| awk '{for(i=$NF;i>1;i--)
if ( $i ~ /-Dweblogic.name/ ) { wln=$i; break } ;
printf "... %s ...",wln}'
onde
-
$NF
é o último campo -
for( )
construct irá fazer um loop a partir do final da linha para começar -
$i ~ /-Dweblogic.name/
match -Dweblogic.name = admin1, -Dweblogic.name = otheradmin (você pode querer que o / ^ - D / não seja o mesmo)
Posso sugerir que você baixe grep java | grep -v grep
para grep [j]ava
, que não irá agradar a ele (e surpreender o colega de trabalho) ou
| awk '/java/ {...} '
ou, para ter um número principal de arg:
| awk '/java/ && NF>10 { ... }'