No mundo unix, cada ferramenta é projetada para fazer um trabalho e fazê-lo bem. Por que se cp
preocupar com a saída do progresso quando outra ferramenta como pv
essa já é usada? Na mesma linha, por que tantos programas despejam coisas na tela sem paginação? Porque já existem ferramentas para esse trabalho, como more
(ou less
). Por que a maioria dos programas que requerem edição de arquivos NÃO apresenta um editor e, em vez disso, terceiriza $EDITOR
? Porque isso deixa todos executando a única tarefa para a qual foram projetados e o usuário usando seu editor favorito para todas as tarefas.
Tangencialmente, a maioria dos programas shell é projetada para ter sua saída canalizada para outros programas shell. A única saída que eles provavelmente fornecerão são coisas que seriam úteis para analisar no próximo comando da cadeia. Programas como cp
são usados em scripts e também manualmente a partir de um terminal; portanto, sua saída é focada no código de saída e nas listas de arquivos que falharam ou foram bem-sucedidos.
Sempre espere combinar ferramentas para obter o efeito desejado.