RLG : Manipulation de fichiers
File manipulation
Texte
Recherche
# Recherche
grep {flags} {target ("regex" | "string")} {ficher | -r dossier}
| Option | Description |
|---|---|
-i |
Ignorer la capitalisation lors de la recherche de texte |
-E |
Utilise les expressions régulières POSIX-ERE |
-r |
Recherche récursive dans les sous-dossiers |
-c |
Compte le nombre d'occurrences trouvées |
-v |
Inverse la recherche pour exclure les correspondances |
-n |
Affiche les numéros de ligne des résultats |
Remplacement
# remplace `foo` par `bar`
sed 's/foo/bar/g' fichier.txt
# supprimer les ligne contenant `debug`
sed '/debug/d' fichier.txt`
# Remplacer un texte dans plusieurs fichiers
find {chemin_dossier} -type f -name "*.txt" -exec sed -i "s/ancien_texte/nouveau_texte/g" {} +
Le symbole
{}représente le nom du fichier trouvé
-idirectsedà l'édition sur place, où le signe+à la fin permet àfindde passer plusieurs fichiers à la fois à la commande sed, ce qui est plus efficace.
Example : Remplacer un texte dans les noms ET la contenu des fichiers dans le dossier actuel
# Pour renommer un module de code importé en les autre modules, etc. old_text="exporterBulk" new_text="massExporter" find . -type f -name "*$old_text*" -exec bash -c 'mv "$1" "${1//'"$old_text"'/'"$new_text"'}"' _ {} \; # remplacer dans les noms des fichiers find . -type f -exec sed -i "s/$old_text/$new_text/g" {} + # remplacer dans les la contenu des fichiers
Édition de texte
Voir cat << 'EOF' >
Traduction
# Traduction
sudo apt install translate-shell
trans -b -I -p :fr
| Option | Description |
|---|---|
-b |
Mode brève |
-I |
Mode interactif |
-p/-speak |
Jouer l'audio de la traduction/ du texte original |
{lang}:{lang} |
Définit les langues source:cible eg, en:fr pour anglais > français |
-h ou --help |
Affiche l'aide |
Dictionnaire
sdcv $word | less
script pour télécharger Dictionnaire de la langue française par Littré, Émile
Crédit pour digitalisation: François Gannaz, francois.gannaz@littre.org
- Les dictionnaire pour sdcv
$HOME/.stardict/dic- dois inclure trois fichiers:
(.*).dict.dz: dictionnaire- ou
(.*).dict(non compressé)
- ou
$1.idx: index$1.ifo: info
Voir aussi dict
donnée structuré (CSV,etc.)
# recherche pour `/regex/` et afficher column 1,3
awk '/regex/ {print $1, $3}' fichier.txt
# Ouvrir fichier avec libre-office calc
libreoffice --calc {chemin}
Scan enhancement
#dependence
sudo apt install imagemagick
# amélioration de contraste de scan : imageMagick
convert -density 300 input.pdf -level 33410,65535 output.pdf
Fusion, conversion, compression, ...
Voir Ghost Script
Member discussion