GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trier les fichiers selon leurs autorisations à l'aide de Ls ?

J'ai un grand nombre de fichiers et de répertoires dans un seul répertoire.

Je dois les trier en termes d'autorisations.

Par exemple

drwx------
drwxr-xr-x 
drwxr-x---

Je me demande simplement si nous pouvons trier les fichiers et les répertoires en utilisant ls ?

Réponse acceptée :

ls ne prend pas directement en charge le tri par autorisations, mais vous pouvez le combiner avec la commande sort :

ls -l | sort

Vous pouvez utiliser le -k option de tri pour commencer la correspondance à partir d'un caractère spécifique, le format est -k FIELD.CHAR , les autorisations sont le premier champ du ls production. Donc par ex. -k 1.2 commencera à partir du deuxième caractère de la chaîne d'autorisation, qui ignorera tout indicateur de répertoire / périphérique / lien, etc., ou -k 1.5 pour trier par autorisations de groupe.

Si vous ne voulez pas la sortie supplémentaire de ls -l , vous pouvez le supprimer avec awk :

 ls -l | sort | awk '{ print $1, $NF}'

Cela n'imprimera que le premier champ (les permissions) et le dernier (le nom du fichier).


Linux
  1. Comment gérer les fichiers journaux à l'aide de Logrotate sous Linux

  2. Comment renommer un grand nombre de fichiers à l'aide d'une expression régulière ?

  3. Comment gérer graphiquement les autorisations Flatpak à l'aide de Flatseal

  4. Comment trouver les répertoires les plus volumineux ou les fichiers les plus volumineux ?

  5. Comment puis-je trouver des fichiers et calculer leur taille ?

Comment éditer plusieurs fichiers à l'aide de l'éditeur Vim

Comment trouver des fichiers en fonction de leurs autorisations sous Linux

Comment copier des fichiers sous Linux à l'aide de la commande CP

Comment modifier les autorisations de fichiers à l'aide de FileZilla

Comment corriger l'erreur 403

Utilisation de Bash Sort pour trier les fichiers comme un patron