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édentes Révision précédente
Prochaine révision
Révision précédente
fr:tools:linux:file-handling [2023/09/30 14:16] crunchyslimefr:tools:linux:file-handling [2023/10/25 12:00] (Version actuelle) – [Utilisation du disque] admin
Ligne 1: Ligne 1:
- 
 ==== Trier des fichiers rapidement par extention ==== ==== Trier des fichiers rapidement par extention ====
 Déplace des fichiers en vrac dans un dossier en fonction de leur extension : Déplace des fichiers en vrac dans un dossier en fonction de leur extension :
Ligne 90: Ligne 89:
  
 echo "done" echo "done"
 +</code>
 +
 +
 +==== copier en conservant l'arborescence ====
 +[[https://ostechnix.com/copy-specific-file-types-while-keeping-directory-structure-in-linux/|source]]
 +
 +<code bash>find . -name '*.mp3' -exec cp --parents \{\} ~/target \;</code>
 +
 +  * ''find'' – commande pour rechercher des fichiers et des dossiers dans les systèmes de type Unix.
 +  * Le point (''.'') - signifie que nous avons copié le contenu du répertoire actuel.
 +  * ''-name ‘*.mp3''' – recherche des fichiers avec l'extension .mp3
 +  * ''-exec cp'' – exécutez la commande 'cp' pour copier les fichiers de la source vers le répertoire de destination.
 +  * ''--parents'' - créez les répertoires parents intermédiaires si nécessaire pour préserver la structure des répertoires parents.
 +  * ''\{\}'' – est automatiquement remplacé par le nom de fichier des fichiers trouvés par la commande « find ». Et les accolades sont échappées pour les protéger de l'expansion par le shell dans certaines versions de commande "find". Vous pouvez également utiliser ''{}'' sans caractères d'échappement.
 +  * ''~/target'' – répertoire cible pour enregistrer les fichiers correspondants.
 +  * ''\;'' – indique que les commandes à exécuter sont maintenant terminées et qu'il faut exécuter à nouveau la commande lors du prochain match.
 +
 +==== copier récursivement tous les fichiers sans conserver l'arborescence ====
 +
 +<code bash>find . -name '*.PNG' -exec cp \{\} allpics/ \;</code>
 +
 +Ici nous sommes à la racine de l'arborescence à explorer et le dossier de destination est ''allpics''.
 +
 +==== lister les différences entre deux répertoires ====
 +compter les différences
 +<code bash>diff -y <(cd /chemin/du/dossier/1/ && ls -R) <(cd /chemin/du/dossier/2/ && ls -R) | wc -l</code>
 +
 +lister les différences dans diff.log
 +<code bash>diff -y <(cd /chemin/du/dossier/1/ && ls -R) <(cd /chemin/du/dossier/2/ && ls -R) > diff.log</code>
 +
 +ajouter ''grep -E \/'' ou ''-d'' sur le ''ls'' permet de lister les répertoires
 +
 +==== lister les duplicatas ====
 +[[https://buildvirtual.net/how-to-find-duplicate-files-on-linux/|source]]
 +
 +**detect duplicates**
 +
 +<code bash>fdupes -Sr .</code>
 +
 +==== Utilisation du disque ====
 +quelques commandes pratiques : 
 +<code bash>
 +#lister les 30 plus gros fichier d'une arborescence
 +du -Sh | sort -rh | head -30</code>
 +<code bash>
 +#ncurse disk usage
 +ncdu
 +#sur system de fichier distant
 +ssh -C user@system ncdu -o- / | ./ncdu -f-
 </code> </code>
  • fr/tools/linux/file-handling.1696076218.txt.gz
  • Dernière modification : 2023/09/30 14:16
  • de crunchyslime