Aqui está a saída de df -h.
[root@ip-10-0-7-225 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 8.0G 1.5G 6.6G 18% /
devtmpfs 478M 0 478M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 13M 484M 3% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/1000
Então, ao executar o comando a seguir, ele dizia 18%.
[root@ip-10-0-7-225 ~]# df / | grep / | awk '{ print $5}'| sed 's/5//g'
18%
A questão é que se eu mudar para a parte sed 's/5//g', o resultado 18% ainda sairá.
Responder1
sed 's/5//g'
aqui muito provavelmente significa que uma pessoa que digitou toda a linha de comando pretendia retirar o sinal de porcentagem da saída, mas perdeu o Shifte obteve 5
em vez de %
.
Na sua forma atual, ele instrui sed
a remover 5
da saída, o que não faz sentido.
Responder2
grep - greps para a primeira linha (contém /)
awk - imprime a 5ª coluna (18%)
sed - substitui 5 por nada - não tem efeito na string acima (18%), pois não contém 5.