Comparei as páginas do manual de dir
e ls
e eles parecem ser exatamente o mesmo. Ambos fazem parte do GNU coreutils e "listam o conteúdo do diretório".
A única diferença que eu vi até agora é que dir
não coloriza a saída.
Então, por que existem dois comandos? Há uma diferença que eu perdi? Por que alguém iria preferir dir
mais ls
?
Respostas:
Eu estaria inclinado a pensar que
dir
existe apenas para compatibilidade com versões anteriores .Do GNU Coreutils :
A propósito,
ls
não colorir a saída por padrão: isso ocorre porque a maioria das distros aliasls
parals --color=auto
in/etc/profile.d
. Para um teste, digiteunalias ls
e tentels
: será incolor.fonte
dir
não é fornecido para compatibilidade com versões anteriores. Em vez disso,ls
funciona da mesma maneira que para compatibilidade com versões anteriores (e porque muitos usuários desejam que funcione dessa maneira) edir
é fornecido como uma alternativa, que os desenvolvedores do GNU consideram geralmente preferível porque sua saída é independente do dispositivo. Veja 4.5 Padrões para Interfaces Geralmente nos padrões de codificação GNU e minha resposta a essa pergunta da UA para detalhes.dir
não é um comando padrão do Unix, mas provavelmente é apenas um tipo de alias / clone para fornecer alguma familiaridade com os usuários do Windows (DOS) (e possivelmente o VAX-VMS e outros sistemas operacionais ondedir
foi usado para listar arquivos).fonte