Para fazer de uma só vez:
eval "$(yourscript | awk -v q=\' '
$1 ~ /^[[:digit:]]+(\.[[:digit:]]+)?[MGT]$/ {
print "SIZE=" $1
}
match($0, /[[:upper:]]{3}/) {
print "PROJECT="q substr($0, RSTART, RLENGTH) q
}')"
Observe que algumas implementações com awk
, como nawk
ou Solaris, mawk
ou versões mais antigas de gawk
, não suportam os operadores de intervalo de expressão regular {x,y}
/ {x}
(no caso de mais antigos (e não antigas) versões de gawk
, você pode executá-lo com POSIXLY_CORRECT=anything
no ambiente para suportá-las embora), embora tenha sido padrão por mais de 25 anos agora. Com eles, você precisaria substituir [[:upper:]]{3}
por [[:upper:]][[:upper:]][[:upper:]]
.