Réponses:
Essaye ça:
ls -l | awk '{print $3, $4, $8}' | sort
Il imprimera le nom d'utilisateur, le nom de groupe et le nom de fichier, à condition que le nom de fichier ne contienne pas d'espaces. Alternativement, vous pouvez taper:
ls -l | awk '{print $3, $4, $0}' | sort
Cela imprimera le nom d'utilisateur, le nom du groupe et la ls -lsortie complète , triés d'abord par le nom d'utilisateur, puis le nom du groupe, puis tout ce qui ls -ls'imprime en premier.
Notez que selon votre distribution, les numéros de colonne réels peuvent différer. J'ai essayé le mien dans SUSE et coreutils version 5.2.1.
Il existe probablement des solutions meilleures et plus élaborées, mais celle-ci est la plus simple et fonctionnera la plupart du temps.
Comme l'a dit Petersohn, quelque chose de similaire à:
ls -l | awk '{print $3, $4, $8, $0}' | sort | column -t$8et le column -tpour une jolie impressionOu encore mieux:
ls -l | sort -k 3 - trie par propriétaire et trie par défaut le champ (groupe) suivant etls -l | sort -k 4,4 -k 3 - trie par groupe puis par propriétairels -l | sort -k 3,3 -k 8 - trie par propriétaire puis par nom de fichierRemarque: la virgule est le champ de fin, donc 3,3commence et se termine au champ 3 3,5trie des champs 3 à 5.