Qual é a diferença entre "dir" e "ls"?

15

Eu comparei as man pages de dir e ls e elas parecem exatamente as mesmas. Ambos fazem parte do GNU coreutils e "listam o conteúdo do diretório".

A única diferença que vi até agora é que dir não coloriza a saída.

Então, por que existem dois comandos? Existe alguma diferença que eu perdi? Por que alguém preferiria dir over ls ?

    
por Martin Thoma 09.10.2012 / 18:11

2 respostas

16

Eu estaria inclinado a pensar que dir está lá apenas por trás compatibilidade .

De GNU Coreutils :

dir is equivalent to ls -C -b; that is, by default files are listed in columns, sorted vertically, and special characters are represented by backslash escape sequences.

A propósito, ls não colore a saída por padrão: isso ocorre porque a maioria das distros alias ls to ls --color=auto in /etc/profile.d . Para um teste, digite unalias ls e tente ls : ele será incolor.

    
por 09.10.2012 / 18:17
7

dir não é um comando padrão Unix, mas provavelmente apenas um tipo de alias / clone para fornecer alguma familiaridade com usuários do Windows (e possivelmente VAX-VMS e outros sistemas operacionais onde dir foi usado para listar arquivos ).

    
por 09.10.2012 / 18:19

Tags