web-dev-qa-db-fra.com

/ bin / ls trie différemment que juste ls

$ ls |sort
xyz-0.0.1-1554490900.rpm
xyz-0.0.1-1554745305.rpm
xyz-0.0.1-1554751021.rpm
xyz-0.0.1-1555513460.rpm
xyz-0.0.1-1555951745.rpm
xyz-0.0.1-1554323568.rpm

$ /bin/ls |sort
xyz-0.0.1-1554323568.rpm
xyz-0.0.1-1554490900.rpm
xyz-0.0.1-1554745305.rpm
xyz-0.0.1-1554751021.rpm
xyz-0.0.1-1555513460.rpm
xyz-0.0.1-1555951745.rpm

$ which ls
alias ls='/bin/ls --color'
        /bin/ls

Notez que le tri est différent entre les deux commandes (ls |sort entraîne un tri incorrect). Cela doit être dû au drapeau de couleur, mais pourquoi?

20
Josh M.

Faire:

/bin/ls --color > file1
/bin/ls > file2

et comparez le contenu, vous verrez la différence.

Aliasing ls à /bin/ls --color=auto est probablement une meilleure idée, elle arrêtera ls de l'utilisation de codes de couleur lorsqu'il n'écrit pas directement sur le terminal (comme lors de la passe au programme suivant ou à écrire dans un fichier).

24
Tomek