Outils pour utilisateurs

Outils du site


find

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
find [2018/05/07 11:10] – [Pour trouver les dossiers qui ont été modifié il y a plus de x jours et les compresser] simonfind [2026/08/22 23:18] (Version actuelle) – supprimée - modification externe (Date inconnue) 127.0.0.1
Ligne 1: Ligne 1:
-====== La commande "find" ====== 
  
-La page de [[man de find]]. 
- 
-===== Exemples ===== 
-==== Pour renommer des fichiers ==== 
-J'ai utilisé "find" pour créer un fichier "nom.extension.html" à côté de chaque fichier "nom.extension", pour [[minigalnano]].  
- 
-Si on est pas dans le bon dossier, on peut donner l'emplacement : 
-<code bash> 
-$ find /home/simon/emplacement/ -iname "*.JPG" -execdir sh -c 'touch `echo "$1" | sed "s/\.\///" | sed "s/\.JPG/\.html/"`' sh {} \; 
-</code> 
- 
-Si on est dans le bon répertoire, pas besoin : 
-<code bash> 
-$ find -iname "*.JPG" -execdir sh -c 'touch `echo "$1" | sed "s/\.\///" | sed "s/\.JPG/\.html/"`' sh {} \; 
-</code> 
- 
-==== Pour trouver des liens cassés ==== 
-<code bash> 
-$ find . -xtype l 
-</code> 
- 
-==== Pour trouver les derniers fichiers modifiés ==== 
-Depuis 24h (ou 1320 minutes) : 
-<code bash> 
-root@mon-serveur:/# find /var/www/html/ -mmin -1320 
-</code> 
- 
-Ou avec des dossiers exclus : 
-<code bash> 
-find / -not -path '/sys*' -not -path '/dev*' -not -path '/proc*' -mmin -60  
-</code> 
- 
-__Source:__ [[http://www.tux-planet.fr/trouver-les-derniers-fichiers-modifies-sous-linux/|http://www.tux-planet.fr/trouver-les-derniers-fichiers-modifies-sous-linux/]] 
- 
-==== Pour trouver les dossiers qui ont été modifié il y a plus de x jours et les compresser ==== 
-L'arborescence :  
-<code bash> 
-$ tree -d 
-. 
-├── 4 
-│   ├── 19 
-│   ├── 20 
-│   ├── 23 
-│   ├── 24 
-│   └── 30 
-└── 5 
-    ├── 1 
-    ├── 10 
-    ├── 11 
-    ├── 12 
-    ├── 2 
-    ├── 3 
-    ├── 5 
-    └── 6 
-</code> 
- 
-<code bash> 
-$ find . -type d | find -ctime 0 -type d -regextype sed -iregex ".*[0-9]/[0-9]*" 
-./4/23 
-./4/24 
-./4/20 
-./4/19 
-./4/30 
-./5/2 
-./5/11 
-./5/10 
-./5/5 
-./5/3 
-./5/12 
-./5/1 
-./5/6 
-</code> 
- 
-Et avec le [[tar]] pour faire des archives de chaque sous-dossier : 
-<code bash> 
-$ find . -type d | find -ctime 0 -type d -regextype sed -iregex ".*[0-9]/[0-9]*" -exec tar -czf {}.tar.gz {} \; 
-</code> 
- 
-<code bash> 
-$ tree -L 2 
-. 
-├── 4 
-│   ├── 19 
-│   ├── 19.tar.gz 
-│   ├── 20 
-│   ├── 20.tar.gz 
-│   ├── 23 
-│   ├── 23.tar.gz 
-│   ├── 24 
-│   ├── 24.tar.gz 
-│   ├── 30 
-│   └── 30.tar.gz 
-└── 5 
-    ├── 1 
-    ├── 10 
-    ├── 10.tar.gz 
-    ├── 11 
-    ├── 11.tar.gz 
-    ├── 12 
-    ├── 12.tar.gz 
-    ├── 1.tar.gz 
-    ├── 2 
-    ├── 2.tar.gz 
-    ├── 3 
-    ├── 3.tar.gz 
-    ├── 5 
-    ├── 5.tar.gz 
-    ├── 6 
-    └── 6.tar.gz 
-</code> 
find.1525691439.txt.gz · Dernière modification : (modification externe)