Pipe
Para quem escreve shell scripts, no Linux, BSD ou qualquer outro sistema Unix, o Pipe (|) é uma ferramenta indispensável. Ele permite direcionar a saída de um comando para outro, permitindo criar vários tipos de filtros e executar operações complicadas de uma forma muito mais concisa. Sem o Pipe, muitas funções simples, de apenas uma linha tornariam-se muito maiores e complicadas.
Por exemplo, o comando "df" lista as partições montadas e várias informações, incluindo o espaço livre de cada uma. Imagine que você quer saber o espaço livre de uma determinada partição (no exemplo hda1) para usar dentro de um script, já com o número convertido para MB:
$ df -m | grep hda1 | sed -r 's/ +/ /g' | cut -d " " -f4
O primeiro comando, "df -m", entrega uma lista com todas as partições montadas e detalhes sobre cada uma, incluindo o espaço livre. O "grep hda1" retira todas as linhas que não interessam, mantendo apenas a linha com os detalhes da partição desejada, neste caso o hda1.
Os campos desta lista são separados por espaços, que variam em número. O comando seguinte usa o sed para retirar os espaços duplicados, de forma que o cut possa nos devolver apenas o campo com o espaço livre (a quarta coluna).
|