¿Cuál es la diferencia entre "dir" y "ls"?

He comparado las páginas man de dir y ls y parecen ser exactamente iguales. Ambos son parte de coreutils de GNU y "contenido de directory de la list".

La única diferencia que he visto hasta ahora es que el dir no colorea la salida.

Entonces, ¿por qué existen dos commands? ¿Hay alguna diferencia que extrañé? ¿Por qué uno preferiría dir sobre ls ?

Me inclinaría a pensar que dir solo existe para compatibilidad con versiones anteriores .

De GNU Coreutils :

dir es equivalente a ls -C -b; es decir, los files pnetworkingeterminados se enumeran en columnas, se orderan verticalmente y los caracteres especiales se representan mediante secuencias de escape de barra invertida.

Por cierto, ls no colorea la salida por defecto: esto es porque la mayoría de las distros alias ls a ls --color=auto en /etc/profile.d . Para una testing, escriba unalias ls luego pruebe ls : será incoloro.

dir no es un command estándar de Unix, sino probablemente solo un tipo de alias / clon para proporcionar cierta familiaridad con los usuarios de Windows (DOS) (y posiblemente VAX-VMS y otros sistemas operativos donde dir se usó para listr files).