Options principales
Essayez de rechercher et de traiter des fichiers dans le système de fichiers en combinant les différentes options de la commande `find`.
1. Recherche de base
2. Conditions de temps
3. Conditions de taille et de permission
4. Actions
Commande générée :
Essayez de combiner les commandes.
Description:
`find` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Opérateurs logiques
La commande `find` fournit des opérateurs logiques pour effectuer des recherches plus précises en combinant plusieurs conditions.
| Opérateur | Description | Exemple |
|---|---|---|
| -and (ou omis) | Lorsque les deux conditions de gauche et de droite sont vraies |
find . -name "*.txt" -and -size +1M
|
| -or | Lorsque au moins une des conditions de gauche ou de droite est vraie |
find . -name "*.log" -or -name "*.tmp"
|
| -not (ou !) | Lorsque la condition est fausse |
find . -not -name "*.txt"
|
| ( ) | Groupement de conditions (nécessite l'échappement) |
find . \( -name "*.txt" -or -name "*.doc" \)
|
Priorité des opérateurs
Les opérateurs de la commande find sont généralement évalués de telle sorte que les actions sont traitées après les expressions. Au sein des conditions, les parenthèses (()) peuvent être utilisées pour spécifier explicitement la priorité. Lors de l'utilisation de parenthèses, elles doivent être échappées avec une barre oblique inverse (\) car elles ont une signification spéciale dans le shell.
Exemples d'utilisation
Entraînez-vous à la recherche et à la gestion de fichiers à travers des exemples d'utilisation pratiques de la commande `find`.
Trouver tous les fichiers avec l'extension '.log' dans le répertoire actuel
find . -name "*.log"
Recherche tous les fichiers se terminant par `.log` à l'emplacement actuel.
Trouver les fichiers de plus de 50 Mo
find /var -size +50M
Recherche tous les fichiers dont la taille dépasse 50 Mo sous le répertoire `/var` du système.
Trouver les fichiers 'conf' modifiés au cours des 7 derniers jours
find . -name "*.conf" -mtime -7
Trouve les fichiers `.conf` modifiés au cours des 7 derniers jours dans le répertoire actuel.
Trouver tous les répertoires avec la permission d'accès 777
find / -type d -perm 777
Recherche les répertoires dont les permissions sont définies sur 777 sur l'ensemble du système pour vérifier les risques de sécurité.
Supprimer les anciens fichiers '.tmp'
find /tmp -name "*.tmp" -mtime +30 -delete
Trouve et supprime tous les fichiers `.tmp` de plus de 30 jours dans le répertoire `/tmp`.
Exécuter une commande spécifique sur les fichiers trouvés (chmod)
find . -name "*.sh" -exec chmod 755 {} \;
Accorde les permissions d'exécution (755) à tous les fichiers avec l'extension `.sh` dans le répertoire actuel.
Trouver les fichiers de plus de 1 Go appartenant à un utilisateur spécifique
find /home -user user1 -size +1G
Recherche dans le répertoire `/home` les fichiers qui appartiennent à `user1` et dont la taille dépasse 1 Go.