recherche

Comment utiliser la commande Linux Find

Jun 25, 2021 pm 02:01 PM
trouver la commandelinux

Sous Linux, la commande find est utilisée pour rechercher des fichiers dans un répertoire spécifié. La syntaxe de base est "find path -option..". Toute chaîne précédant le paramètre sera considérée comme le nom du répertoire à trouver ; si vous utilisez cette commande sans définir de paramètre, la commande find recherchera les sous-répertoires et les fichiers dans le répertoire actuel.

Comment utiliser la commande Linux Find

L'environnement d'exploitation de ce tutoriel : système Red Hat Enterprise Linux 6.1, ordinateur Dell G3.

La commande Linux find est utilisée pour rechercher des fichiers dans le répertoire spécifié.

Format de la commande find :

find   path  -option  【 -print 】  【 -exec   -ok   |xargs  |grep  】 【  command  {} \;  】

Paramètres de la commande find :

1)path : Le chemin du répertoire à rechercher.

  • ~ représente le répertoire $HOME
  • représente le répertoire courant
  • / représente le répertoire racine
<.>2 )

print : Indique la sortie des résultats vers la sortie standard.

3)

exec : Exécute la commande shell donnée par ce paramètre sur le fichier correspondant.

La forme est commande {};,

Notez qu'il y a un espace entre {} et

4)

ok : a le même effet as exec,

La différence est qu'avant d'exécuter la commande, une invite sera donnée pour permettre à l'utilisateur de confirmer s'il doit l'exécuter

5)

|xargs Il a la même fonction que exec et sert de successeur

La différence est que

|xargs est principalement utilisé pour entreprendre des opérations de suppression, tandis que -exec peut être utilisé pour la copie , déplacer, renommer, etc.

6)

options  : Indique la méthode de recherche

options Les options couramment utilisées incluent les options suivantes :

-name   filename               #查找名为filename的文件
 -perm                                #按执行权限来查找
 -user    username             #按文件属主来查找
 -group groupname            #按组来查找
 -mtime   -n +n                   #按文件
更改时间
来查找文件,-n指n天以内,+n指n天以前
 -atime    -n +n                   #按文件
访问时间
来查找文件,-n指n天以内,+n指n天以前
 -ctime    -n +n                  #按文件
创建时间
来查找文件,-n指n天以内,+n指n天以前
 -nogroup                          #查无有效属组的文件,即文件的属组在/etc/groups中不存在
 -nouser                            #查无有效属主的文件,即文件的属主在/etc/passwd中不存
 -type    b/d/c/p/l/f             #查是块设备、目录、字符设备、管道、符号链接、普通文件
 -size      n[c]                    #查长度为n块[或n字节]的文件
 -mount                            #查文件时不跨越文件系统mount点
 -follow                            #如果遇到符号链接文件,就跟踪链接所指的文件
 -prune                            #忽略某个目录

Tout La chaîne avant le paramètre sera considérée comme le nom du répertoire à rechercher. Si vous utilisez cette commande sans définir de paramètres, la commande find recherchera les sous-répertoires et les fichiers dans le répertoire actuel. Et tous les sous-répertoires et fichiers trouvés seront affichés.

Ce qui suit utilise quelques exemples simples pour présenter l'utilisation courante de find :
1. Recherchez par nom
Dans le répertoire et les sous-répertoires actuels, recherchez les majuscules lettres fichiers txt commençant par des lettres

$ find . -name &#39;[A-Z]*.txt&#39; -print   

Dans /etc et ses sous-répertoires, recherchez les fichiers commençant par host


$ find /etc -name &#39;host*&#39; -print  

Dans le répertoire $HOME et ses sous-répertoires, recherchez tous les fichiers


$ find ~ -name &#39;*&#39; -print

Dans le répertoire et les sous-répertoires courants, recherchez les fichiers txt qui ne commencent pas par out


$ find . -name "out*" -prune -o -name "*.txt" -print

2. Recherche par répertoire

Rechercher des fichiers txt dans des sous-répertoires autres que aa dans le répertoire courant


$ find . -path "./aa" -prune -o -name "*.txt" -print  

Dans le répertoire actuel répertoire et recherchez les fichiers txt dans des sous-répertoires autres que aa et bb


 $ find . \( -path &#39;./dir0&#39; -o -path &#39;./dir1&#39; \) -a -prune -o -name &#39;*.txt&#39; -print

Remarque : obligatoire dans 1 et 2 Ajouter espaces, sinon il y aura une erreur comme indiqué sur l'image

Vous pouvez ajouter -a ou pas à 3 endroits Dans le répertoire courant, plus dans le sous-répertoire, Rechercher les fichiers txt

$ find . ! -name "." -type d -prune -o -type f -name "*.txt" -print

ou

find . -name *.txt -type f -print

Lien convivial : explication détaillée de l'utilisation de la commande find -path -prune sous Linux

3. Recherche par autorisations

Dans le répertoire et les sous-répertoires actuels, recherchez les fichiers dont le propriétaire dispose d'autorisations de lecture, d'écriture et d'exécution et d'autres fichiers dotés d'autorisations de lecture et d'exécution


$find . -perm 755 -print

Rechercher les fichiers pour lesquels l'utilisateur dispose d'autorisations d'écriture ou les fichiers ou répertoires pour lesquels les utilisateurs du groupe ont des autorisations d'écriture


find ./ -perm /220       
find ./ -perm /u+w,g+w       
find ./ -perm /u=w,g=w

Rechercher par type (b/d/c/p/l/. f)

Dans le répertoire courant et les sous-répertoires Répertoire, recherchez les fichiers de liens symboliques


 $ find . -type l -print

5. Par propriétaire et groupe

Rechercher fichiers dont le propriétaire est www

$ find / -user www -type f -print

Rechercher les attributs Principaux fichiers supprimés


$ find / -nouser -type f -print

Rechercher les fichiers appartenant au groupe mysql


$ find / -group mysql -type f -print

Rechercher les fichiers supprimés du groupe d'utilisateurs


$ find / -nogroup -type f -print

6. Rechercher par heure
Rechercher les fichiers qui ont été modifiés dans les 2 jours

$ find . -mtime -2 -type f -print   

Rechercher les fichiers qui ont a été modifié il y a 2 jours


 $ find . -mtime +2 -type f -print

Rechercher les fichiers consultés dans la journée


$ find . -atime -1 -type f -print

Rechercher les fichiers consultés il y a un jour

 $ find . -atime +1 -type f -print  

Rechercher les fichiers dont le statut a été modifié au cours de la journée

$ find . -ctime -1 -type f -print   

Rechercher les fichiers dont le statut a été modifié il y a un jour

$ find . -ctime +1 -type f -print  

      查找10分钟以前状态被改变的文件 

$ find . -cmin +10 -type f -print

7、按文件新旧   

      查找比 aa.txt 新的文件 

$ find . -newer "aa.txt" -type f -print   

      查找比 aa.txt 旧的文件 

$ find . ! -newer "aa.txt" -type f -print   

      查找比aa.txt新,比bb.txt旧的文件 

$ find . -newer &#39;aa.txt&#39; ! -newer &#39;bb.txt&#39; -type f -print

8、按大小查找   

      查找超过1M的文件 

$ find / -size +1M -type f -print   

      查找等于6字节的文件 

$ find . -size 6c -print   

      查找小于32k的文件 

$ find . -size -32k -print

9、执行命令   

      1)查找 del.txt 并删除,删除前提示确认 

$ find . -name &#39;del.txt&#39; -ok rm {} \;  

     2) 查找 aa.txt 并备份为aa.txt.bak 

$ find . -name &#39;aa.txt&#39; -exec cp {} {}.bak \;

     3)查当前目录下的所有普通文件

    # find . -type f -exec ls -l {} \; 
    -rw-r–r–    1 root      root         34928 2003-02-25   ./conf/httpd.conf 
    -rw-r–r–    1 root      root         12959 2003-02-25   ./conf/magic 
    -rw-r–r–    1 root      root          180 2003-02-25   ./conf.d/README

   查当前目录下的所有普通文件,并在 - exec 选项中使用 ls -l 命令将它们列出

   4)在 /logs 目录中查找更改时间在5日以前的文件并删除它们

$ find logs -type f -mtime +5 -exec   -ok   rm {} \;

   5)查询当天修改过的文件

# find   ./   -mtime   -1   -type f   -exec   ls -l   {} \;

   6)查询文件并询问是否要显示

# find   ./   -mtime   -1   -type f   -ok   ls -l   {} \;  
    < ls … ./classDB.inc.php > ? y
    -rw-r–r–    1 cnscn    cnscn       13709   1月 12 12:22 ./classDB.inc.php
    # find   ./   -mtime   -1   -type f   -ok   ls -l   {} \;  
    < ls … ./classDB.inc.php > ? n

关于 有没有 -print 的区别

加  -print

查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,没有选项-print时文件列表前一行不会显示目录名称)

find /home -type d -print -exec ls {} \;

不加 -print

相关推荐:《Linux视频教程

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!

Déclaration
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
Composants essentiels de Linux: expliqués pour les débutantsComposants essentiels de Linux: expliqués pour les débutantsApr 17, 2025 am 12:08 AM

Les composants principaux de Linux incluent le noyau, le système de fichiers, le shell et les outils communs. 1. Le noyau gère les ressources matérielles et fournit des services de base. 2. Le système de fichiers organise et stocke les données. 3. Shell est l'interface permettant aux utilisateurs d'interagir avec le système. 4. Les outils courants aident à effectuer des tâches quotidiennes.

Linux: un regard sur sa structure fondamentaleLinux: un regard sur sa structure fondamentaleApr 16, 2025 am 12:01 AM

La structure de base de Linux comprend le noyau, le système de fichiers et le shell. 1) Ressources matérielles de gestion du noyau et utiliser uname-R pour afficher la version. 2) Le système de fichiers EXT4 prend en charge les fichiers volumineux et les journaux et est créé à l'aide de MKFS.EXT4. 3) Shell fournit une interaction de ligne de commande telle que Bash et répertorie les fichiers à l'aide de LS-L.

Opérations Linux: Administration et maintenance du systèmeOpérations Linux: Administration et maintenance du systèmeApr 15, 2025 am 12:10 AM

Les étapes clés de la gestion et de la maintenance du système Linux incluent: 1) maîtriser les connaissances de base, telles que la structure du système de fichiers et la gestion des utilisateurs; 2) Effectuer la surveillance du système et la gestion des ressources, utilisez le haut, le HTOP et d'autres outils; 3) Utilisez des journaux système pour dépanner, utiliser JournalCTL et d'autres outils; 4) Rédiger des scripts automatisés et la planification des tâches, utilisez des outils CRON; 5) Implémentez la gestion et la protection de la sécurité, configurez les pare-feu via iptables; 6) Effectuer l'optimisation des performances et les meilleures pratiques, ajuster les paramètres du noyau et développer de bonnes habitudes.

Comprendre le mode de maintenance de Linux: l'essentielComprendre le mode de maintenance de Linux: l'essentielApr 14, 2025 am 12:04 AM

Le mode de maintenance Linux est entré en ajoutant init = / bin / bash ou paramètres uniques au démarrage. 1. Entrez le mode de maintenance: modifiez le menu Grub et ajoutez des paramètres de démarrage. 2. Remontez le système de fichiers en mode de lecture et d'écriture: Mount-Oremount, RW /. 3. Réparer le système de fichiers: utilisez la commande fsck, telle que FSCK / DEV / SDA1. 4. Sauvegardez les données et opérez avec prudence pour éviter la perte de données.

Comment Debian améliore la vitesse de traitement des données HadoopComment Debian améliore la vitesse de traitement des données HadoopApr 13, 2025 am 11:54 AM

Cet article examine comment améliorer l'efficacité du traitement des données Hadoop sur les systèmes Debian. Les stratégies d'optimisation couvrent les mises à niveau matérielle, les ajustements des paramètres du système d'exploitation, les modifications de configuration de Hadoop et l'utilisation d'algorithmes et d'outils efficaces. 1. Le renforcement des ressources matérielles garantit que tous les nœuds ont des configurations matérielles cohérentes, en particulier en faisant attention aux performances du CPU, de la mémoire et de l'équipement réseau. Le choix des composants matériels de haute performance est essentiel pour améliorer la vitesse de traitement globale. 2. Réglage des paramètres JVM: Ajustez dans le fichier hadoop-env.sh

Comment apprendre Debian SyslogComment apprendre Debian SyslogApr 13, 2025 am 11:51 AM

Ce guide vous guidera pour apprendre à utiliser Syslog dans Debian Systems. Syslog est un service clé dans les systèmes Linux pour les messages du système de journalisation et du journal d'application. Il aide les administrateurs à surveiller et à analyser l'activité du système pour identifier et résoudre rapidement les problèmes. 1. Connaissance de base de Syslog Les fonctions principales de Syslog comprennent: la collecte et la gestion des messages journaux de manière centralisée; Prise en charge de plusieurs formats de sortie de journal et des emplacements cibles (tels que les fichiers ou les réseaux); Fournir des fonctions de visualisation et de filtrage des journaux en temps réel. 2. Installer et configurer syslog (en utilisant RSYSLOG) Le système Debian utilise RSYSLOG par défaut. Vous pouvez l'installer avec la commande suivante: SudoaptupDatesud

Comment choisir la version Hadoop dans DebianComment choisir la version Hadoop dans DebianApr 13, 2025 am 11:48 AM

Lors du choix d'une version Hadoop adaptée au système Debian, les facteurs clés suivants doivent être pris en compte: 1. Stabilité et support à long terme: pour les utilisateurs qui poursuivent la stabilité et la sécurité, il est recommandé de choisir une version stable Debian, comme Debian11 (Bullseye). Cette version a été entièrement testée et a un cycle de support allant jusqu'à cinq ans, ce qui peut assurer le fonctionnement stable du système. 2. Package Mise à jour: Si vous avez besoin d'utiliser les dernières fonctionnalités et fonctionnalités Hadoop, vous pouvez considérer la version instable de Debian (SID). Cependant, il convient de noter que les versions instables peuvent avoir des problèmes de compatibilité et des risques de stabilité. 3. Soutien et ressources communautaires: Debian a un énorme soutien communautaire, qui peut fournir une documentation riche et

TiGervnc Partager Fichier Méthode sur DebianTiGervnc Partager Fichier Méthode sur DebianApr 13, 2025 am 11:45 AM

Cet article décrit comment utiliser TiGervnc pour partager des fichiers sur Debian Systems. Vous devez d'abord installer le serveur Tigervnc, puis le configurer. 1. Installez le serveur Tigervnc et ouvrez le terminal. Mettez à jour la liste des packages logiciels: SudoaptupDate pour installer le serveur TiGervnc: SudoaptInstallTiGervnc-standalone-servertigervnc-Common 2. Configurez le serveur TiGervnc pour définir le serveur VNC: VNCPasswd Démarrer le serveur VNC: VNCServer: 1-localHostNo

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP