Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ####################################
- # Manipulation du contenu des fichiers
- #Commandes qui modifient le contenu d'un fichier (ex: ajouter/supprimer des caractères, remplacer des chaînes, etc.)
- ####################################
- # Sélectionner une plage de caractères dans chaque ligne d'un fichier
- cut -c 1-13 input.txt > output.txt
- # Ajouter un préfixe à chaque ligne dans un fichier (en place)
- sed -i -e 's/^/prefix/' file
- # Ajouter un préfixe à chaque ligne dans un fichier (nouveau fichier)
- sed -e 's/^/prefix/' file > file.new
- # Ajouter un suffixe à chaque ligne dans un fichier
- sed -i -e 's/$/suffix/' filename
- # Supprimer le premier caractère de chaque ligne
- sed -i 's/^.\{1\}//' filename
- # Supprimer le dernier caractère de chaque ligne
- sed -i 's/.$//' filename
- # Supprimer la première ligne d'un fichier
- sed -i 1d filename.txt
- # Supprimer les 10 premières lignes d'un fichier
- sed -i 1,10d filename.txt
- # Supprimer une plage de lignes spécifique et une ligne précise
- sed -i '5,10d;12d' file
- # Remplacer la 2ème ligne avec un nouveau contenu
- sed -i '2s/.*/New 2nd line/' myfile
- # Ajouter une chaîne à une ligne spécifique (ex : première ligne)
- sed -i "1i new string added on the first line" file
- # Supprimer des caractères spéciaux (ex: " ) dans un fichier
- sed -i 's/"//g' filename
- # Supprimer un mot spécifique dans un fichier
- sed -i 's/\<WordToDelete\>//g' filename.txt
- # Supprimer les lignes contenant une chaîne spécifique
- sed -i '/pattern to match/d' ./infile
- # Extraire des lignes spécifiques d'un fichier
- sed -n '5p;10p' input > output
- # Extraire une plage de lignes spécifique d'un fichier
- sed -n '5,10p' input > output
- # Supprimer les caractères ASCII non imprimables
- tr -cd '\11\12\15\40-\176' < file-with-binary-chars > clean-file
- # Supprimer les lignes de 3 caractères ou moins
- sed -i -r '/^.{,3}$/d' filename
- # Supprimer les lignes de 25 caractères ou plus
- sed -i -r "/.{25,}/d" filename
- # Supprimer les lignes vides
- sed -i '/\S/!d' filename.txt
- # Supprimer les lignes commentées (#)
- sed -i '/^#/d' filename.txt
- # Supprimer les espaces en début et fin de ligne
- sed -i 's/^[\t ]*//g;s/[\t ]*$//g' filename
- # Supprimer les espaces en fin de ligne
- sed -i 's/[\t ]*$//g' filename
- # Supprimer les espaces en début de ligne
- sed -i 's/^[\t ]*//g' filename
- # Supprimer les premiers x caractères de chaque ligne (ex: les 2 premiers)
- sed -i 's/^..//' filename
- # Remplacer une chaîne par une autre dans un fichier (méthode 1)
- sed -i 's/find/replace/' *.csv
- # Remplacer une chaîne par une autre dans plusieurs fichiers (méthode 2)
- grep -rl matchstring ./ | xargs sed -i 's/string1/string2/g'
- # Ajouter un suffixe à des fichiers texte
- for f in *.txt; do mv "$f" "${f%.mp3}_SUFFIXE.mp3"; done
- # Remplacer les espaces dans les noms de fichiers par des underscores
- find ./ -depth -name "* *" -exec rename 's/ /_/g' "{}" \;
- # Supprimer les espaces dans les noms de fichiers
- rename "s/ *//g" *
- # Supprimer les points dans les noms de fichiers
- find -name "*.*.*" | xargs -I % bash -c 'mv "%" "$(echo "%" | sed "s|^./||;:a;s/\.\([^.]\+\)\./\1./;ta")"'
- ####################################
- # Manipulation des noms de fichiers
- #Commandes qui modifient les noms des fichiers (ex: renommer, ajouter des préfixes/suffixes, supprimer des espaces, etc.).
- ####################################
- # Renommer des fichiers en ajoutant un préfixe
- rename 's/^/PREFIXE_/' *
- # Ajouter un suffixe aux noms de fichiers
- for file in *; do mv "$file" "$(basename "$file")SUFFIXE"; done;
- # Renommer tous les fichiers commençant par "a" en "b"
- mmv a\* b\#1
- # Renommer des fichiers en ajoutant un numéro (ex: 01_fileA)
- n=1; for f in *.txt; do mv "$f" "0$((n++))_$f"; done
- ##################################################
- # Recherche, extraction et manipulation de contenu
- #Commandes liées à la recherche de contenu dans les fichiers, à l'extraction et à la manipulation de ce contenu.
- ##################################################
- # Extraire toutes les URLs d'un fichier
- grep -o -E "https?://[][[:alnum:]._~:/?#@!$&'()*+,;%-]+" file | grep "twitter" > liste_tweets
- # Extraire toutes les adresses email d'un fichier
- grep -oe "[a-zA-Z0-9._]\+@[a-zA-Z]\+.[a-zA-Z]\+" input > output
- # Rechercher un motif spécifique dans un CSV et extraire les lignes
- awk -F\; '$20 == "keyword"' *.csv
- # Trouver des fichiers contenant une chaîne et les déplacer
- grep -l 'string' *.pdf | xargs -I % mv % /dest/folder
- mv $(grep -lir 'string' ~/directory/*) destination/
- # Trouver et supprimer des fichiers contenant une chaîne spécifique
- grep -l --null 'specific_string' ./* | xargs -0 rm
- # Compter le nombre d'occurrences d'un mot dans un fichier texte
- grep -o -i mauris example.txt | wc -l
- # Extraire les fichiers contenant un motif et les copier/déplacer
- for i in $(grep -i "123456" *.ini); do mv "${base_fname}.ini" "${base_fname}.txt" /dest/folder; done
- # Extraire les fichiers contenant des motifs multiples et les copier/déplacer
- for i in $(grep -i "123\|456\|789" *.ini); do mv "${base_fname}.ini" "${base_fname}.txt" /dest/folder; done
- # Extraire des fichiers à partir d'une liste de motifs et les copier/déplacer
- for i in $(grep -f ~/test/file.txt *.ini); do cp "${base_fname}.ini" "${base_fname}.txt" /dest/folder; done
- ##########################################################
- # Manipulation et analyse de fichiers (tri et duplication)
- #Commandes pour trier, supprimer ou gérer les doublons dans des fichiers.
- ##########################################################
- # Supprimer les doublons tout en préservant l'ordre
- awk '!(count[$0]++)' old.txt > new.txt
- # Supprimer les doublons tout en préservant l'ordre du texte
- awk '!_[$0]++' old.txt > new.txt
- # Trier et montrer les lignes uniques (sans doublons)
- sort file.txt | uniq -u
- # Trier et compter les lignes uniques (sans doublons)
- sort file.txt | uniq -uc
- # Trier et montrer les lignes dupliquées uniquement
- sort file.txt | uniq -d
- # Trier et compter uniquement les lignes dupliquées
- sort file.txt | uniq -dc
- # Trier par longueur (ordre décroissant)
- awk '{ print length($0) " " $0; }' <tonFichier> | sort -r -n | cut -d ' ' -f 2- > new.txt
- # Trier par ordre alphabétique
- sort old.txt | uniq > new.txt
- # Fusionner plusieurs fichiers texte en un seul
- cat file1.txt file2.txt > combined.txt
- # Ne conserver que les lignes sans doublons dans un fichier CSV
- sort fichier.csv | uniq -u > fichier2.txt
- #########################
- # Autres commandes utiles
- #Commandes diverses qui ne rentrent pas spécifiquement dans les catégories ci-dessus (ex: conversion de formats, téléchargement de fichiers, etc.).
- #########################
- # Compresser une série de caractères identiques en un seul caractère
- tr -s 'input_characters' < filename > newfile
- # Convertir le contenu d'un fichier en majuscules
- tr a-z A-Z < filename > newfile
- # Convertir un séparateur de tabulation en virgules dans un CSV
- cat input.csv | tr "\\t" ";" > output.csv
- # Convertir un fichier CSV en texte avec des séparateurs de tabulation (csvkit)
- csvformat -T input.csv > output.txt
- # Télécharger tous les fichiers d'un format spécifique via wget
- wget -c -A '*.mp3' -r -l 1 -nd
- # Créer un fichier texte avec une plage de nombres (ex: de 1 à 1000)
- seq 1 1000 > numbers.txt
- # Créer un fichier texte avec une plage de nombres incrémentée de 5
- seq 5 5 1000 > numbers.txt
- # Compter le nombre de pages dans des fichiers PDF
- exiftool *.pdf | grep 'Page Count' | cut -c35-
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement