Maison > Tutoriel système > Linux > le corps du texte

Options et paramètres disponibles pour la commande find sous Linux

WBOY
Libérer: 2024-01-03 10:55:19
avant
1010 Les gens l'ont consulté

Utiliser l'option de nom :

L'option de nom de fichier est l'option la plus couramment utilisée pour la commande find. Cette option est utilisée seule ou avec d'autres options. Vous pouvez utiliser un modèle de nom de fichier pour faire correspondre les fichiers, n'oubliez pas de mettre le modèle de nom de fichier entre guillemets. Quel que soit le chemin actuel, si vous souhaitez rechercher un fichier dont le nom correspond à *.log dans votre répertoire racine $HOME, utilisez ~ comme paramètre 'pathname' et le tilde ~ représente le répertoire personnel de l'utilisateur actuel.

Recherchez le fichier .log du répertoire personnel de l'utilisateur actuellement connecté :

> find ~ -name "*.log"
Copier après la connexion

Rechercher les fichiers commençant par une majuscule dans le répertoire courant :

> find . -name "[A-Z]*"
Copier après la connexion

Recherchez les fichiers commençant par sys dans le répertoire /etc :

> find /etc -name "sys*"
Copier après la connexion

Demander des images dans le répertoire courant commençant par une lettre majuscule + 3 chiffres .png

> find . -name "[A-Z]*[0-9][0-9][0-9].png"
Copier après la connexion

Utiliser l'option permanente :

Utilisez l'option -perm pour rechercher des fichiers en fonction du mode d'autorisation des fichiers. Il est préférable d'utiliser la notation octale pour les autorisations. Si vous souhaitez trouver un fichier avec le bit d'autorisation de fichier 755 dans le répertoire actuel, c'est-à-dire que le propriétaire du fichier peut lire, écrire et exécuter, et que d'autres utilisateurs peuvent lire et exécuter, vous pouvez utiliser


> find . -perm 755 
Copier après la connexion

find -perm -mode , indiquant que le 1 converti en binaire en mode doit correspondre aux bits d'autorisation du fichier. Par exemple, si mode=644, il est converti en binaire comme 110 100 100, et les bits d'autorisation du fichier recherché peuvent également être convertis en. un nombre binaire. Deux Les bits qui sont des 1 doivent correspondre exactement, tandis que les 0 n'ont pas d'importance. Par exemple, si les autorisations du fichier recherché sont 111 111 111 converties en nombres binaires, cela sera mis en correspondance, mais si c'est 100 100 100, alors il ne sera pas mis en correspondance. Donc la fonction de ce '-' se résume à faire correspondre des fichiers avec des autorisations plus suffisantes que le mode (je ne trouve pas de mots pour le décrire)

Ignorer un répertoire :

Si vous souhaitez ignorer un certain répertoire lors de la recherche de fichiers parce que vous savez que le fichier que vous recherchez n'existe pas dans ce répertoire, vous pouvez utiliser l'option -prune pour indiquer le répertoire qui doit être ignoré. Soyez prudent lorsque vous utilisez l'option -prune, car si vous utilisez également l'option -degree, l'option -prune sera ignorée par la commande find. Si vous souhaitez rechercher des fichiers dans le répertoire courant mais pas dans le répertoire ./bin, vous pouvez utiliser


> find . -path "./bin" -prune -o -print
Copier après la connexion

Évitez plusieurs dossiers :

> find . \( -path "./bin" -o -path "./doc" \) -prune -o -print

Copier après la connexion

Les parenthèses indiquent la combinaison d’expressions. Indique une référence, qui demande au shell de ne pas faire d'interprétations spéciales des caractères suivants, mais de laisser la commande find interpréter leur signification.

Pour rechercher un certain fichier, -name et d'autres options sont ajoutées après -o:

> find . \( -path "./bin" -o -path "./doc" \) -prune -o-name "*.txt" -print

Copier après la connexion

<span style="background-color: initial;">user nouser</span><span style="background-color: initial;">group nogroup</span>

Trouver le fichier dont le propriétaire est root dans le répertoire courant

> find . -user root 

Copier après la connexion

Rechercher les fichiers supprimés appartenant au répertoire actuel :

> find . -nouser

Copier après la connexion

Rechercher les fichiers dont le groupe est root dans le répertoire courant :

> find . -group root 

Copier après la connexion

Rechercher les fichiers supprimés dans le groupe auquel appartient le répertoire actuel :

> find . -nogroup

Copier après la connexion

Rechercher des fichiers par heure

Rechercher les fichiers modifiés dans les 7 jours :

> find . -mtime -7

Copier après la connexion

Rechercher les fichiers modifiés avant 7 jours :

> find . mtime +7

Copier après la connexion

Rechercher des fichiers plus récents ou plus anciens qu'un certain fichier

Trouver des fichiers avec des heures de modification plus récentes que le fichier a.log mais plus anciennes que le fichier b.log :

> find . -newer a.log ! -newer b.log

Copier après la connexion

Trouver des fichiers dont l'heure de modification est plus récente qu'un fichier.log :

> find . -newer a.log

Copier après la connexion

option de type

Retrouvez tous les répertoires dans le répertoire /etc :

> find /etc -type d

Copier après la connexion

Trouvez tous les fichiers de liens symboliques dans le répertoire /etc :

> find /etc -type l

Copier après la connexion

paramètre de taille

Vous pouvez rechercher des fichiers en fonction de leur longueur. La longueur du fichier mentionnée ici peut être mesurée en blocs ou en octets. La forme d'expression de la longueur du fichier mesurée en octets est N c ; la longueur du fichier mesurée en blocs ne peut être exprimée que par des nombres. Lors de la recherche de fichiers par longueur de fichier, cette longueur de fichier exprimée en octets est généralement utilisée pour visualiser la taille du système de fichiers, car elle est plus facile à convertir à l'aide de blocs à mesurer.

Rechercher des fichiers d'une longueur supérieure à 100 Mo dans le répertoire actuel :

> find . -size +100M

Copier après la connexion

Utiliser l'option de profondeur :

在使用find命令时,可能希望先匹配所有的文件,再在子目录中查找。使用depth选项就可以使find命令这样做。这样做的一个原因就是,当在使用find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份子目录中的文件。

先输出子内容,再输出上层目录内容,直到最顶层:

> find test -depth! -empty

test/test1/test2/test3

test/test1/test2

test/test1

test
Copier après la connexion

先输出顶层目录,再输出下面的各层子目录内容,直到最低层:

> find test ! -empty

test

test/test1

test/test1/test2

test/test1/test2/test3
Copier après la connexion

mount选项:

在当前的文件系统中查找文件(不进入其他文件系统),可以使用find命令的mount选项。

从当前目录开始查找位于本文件系统中文件名以.txt结尾的文件:

> find . -mount -name "*.txt"-print

Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:jb51.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!