Você pode fazer isso sem o grep
:
df --output=target,size /mnt/xyz | awk ' NR==2 { print $2 } '
df
aceita como argumento o ponto de montagem; você pode dizer a awk
para imprimir apenas a segunda linha (NR == 2) e o segundo argumento, $ 2.
Ou melhor ainda, corte o alvo como você não está produzindo, e se torna:
df --output=size /mnt/xyz | awk ' NR==2 '
Quando eu era um iniciante, eu também consegui contornar cut
limitações usando tr -s " "
(squeeze) para cortar espaços redundantes como em:
df --output=target,size /mnt/xyz | tail -1 | tr -s " " | cut -f2 -d" "