Você está enfrentando um problema de citação; o $5
está sendo interpretado na hora errada. Existem pelo menos duas soluções:
-
Coloque um
\
antes do$
; por exemplo./usr/bin/ssh -i /path/to/key user@server "df -h | grep /dev/root | awk '{print \}'"
-
Execute o
df
remotamente, mas ogrep
e oawk
localmente. por exemplo,/usr/bin/ssh -i /path/to/key user@server df -h | grep /dev/root | awk '{print $5}'
FWIW, eu executei uma versão da segunda opção, mas mesclando grep
e awk
/usr/bin/ssh -i /path/to/key user@server df -h | awk '/\/dev\/root/ {print $5}'