Erro de sintaxe AWK: final inesperado do arquivo

0

Estou fazendo um script como um usuário sudo que me envia o uso da CPU para o meu servidor, e me envia um email com o resultado de outro script,

sudo sh -c '{
x='ps aux | sort -nrk 3,3 | tr -s " " | cut -d" " -f 3,11- |awk '\'BEGIN { OFS = " " } { $1 = $1"%"; print }'\''
/opt/fetch_script.sh $x
}| mailx [email protected]'

Mas ainda me dá erro devido ao uso do AWK:

awk: 0: unexpected character '\'
aux: -c: line 1: syntax error: unexpected end of file

Alguma ajuda, por favor?

    
por MohammedSimba 20.11.2016 / 16:33

1 resposta

2

O problema é provavelmente sua tentativa de aninhar aspas, no entanto, você está complicando demais as coisas, não fazendo uso das opções de formato de saída do comando ps . Uma versão mais simples (com citações consistentes) pode ser

sh -c '/opt/fetch_script.sh "$(ps axo pcpu= o comm= | awk '\''{$1=$1"%"; print}'\'')"'
    
por steeldriver 20.11.2016 / 17:35