cat
, qui vient de l'anglais catenate, synonyme de concatenate (soit : «concaténer»), est une commande Unix standard permettant de concaténer des fichiers ainsi que d'afficher leur contenu sur la sortie standard — habituellement un terminal Unix ; le plus souvent des « shells », notamment Bash, zsh, Csh, etc.
Dans les systèmes Microsoft, son équivalent est la commande type
cat fichier_1.txt | tr " " "\n"
tr
veut dire traduire
donc remplacer quelque chose par autre chose. Ici, on remplace les espaces " "
par un saut de ligne "\n"
.
cat fichier_1.txt | tr " " "\n" | tr -d [:punct:]
cat fichier_1.txt | tr " " "\n" | tr -d "[:punct:]"
-d
= delete [:punct:]
=ponctuation 1
cat fichier_1.txt | tr " " "\n" | tr -d [:punct:] | tr [:upper:] [:lower:]
cat fichier_1.txt | tr " " "\n" | tr -d "[:punct:]" | tr "[:upper:]" "[:lower:]"
cat fichier_1.txt | tr " " "\n" | tr -d [:punct:] | tr [:upper:] [:lower:] | sort
cat fichier_1.txt | tr " " "\n" | tr -d "[:punct:]" | tr "[:upper:]" "[:lower:]" | sort
sort
veut dire: trier les lignes par ordre alphabétique (par défaut).
Si vous ajouter -r
vous aurez l'ordre alphabétique inversé.
cat fichier_1.txt | tr " " "\n" | tr -d [:punct:] | tr [:upper:] [:lower:] | sort | uniq
cat fichier_1.txt | tr " " "\n" | tr -d "[:punct:]" | tr "[:upper:]" "[:lower:]" | sort | uniq
uniq
veut dire unique
, donc ne répète pas les doublons (yeah!), mais cela peut être intéressant de visualiser la récurrence des mots ;-)
cat fichier_1.txt | tr " " "\n" | tr -d [:punct:] | tr [:upper:] [:lower:] | sort | uniq > liste_mots_1.txt
cat fichier_1.txt | tr " " "\n" | tr -d "[:punct:]" | tr "[:upper:]" "[:lower:]" | sort | uniq > liste_mots_1.txt
cat mon-texte.txt | tr " " "\n" | sort | uniq -c
-c
est une option de la commande 'uniq' qui permet de compter le nombre d'occurences dans un texte
cat fichier_1.txt | tr " " "\n" | uniq | shuf | tr "\n" " " | cut -c-100
Recrée un texte en combinant les mots aléatoirement et s'arrette après les 100 premières lettres. shuf
(ou gshuf
2 pour les macs), remélange aléatoirement la liste des mots, cut
coupe le texte après 100 lettres.
cat text.txt | tr " " "\n" | uniq | shuf | tr "\n" " " | head
Ici, head
veut dire qu'il combine les mots issus des 10 premiers paragraphes du texte de base.
cat a.txt | tr e i
Ici on remplace tous les e par des i
cat a.txt | sed -e "s/livre/écran/g" > b.txt
grep "écran" b.txt
cat a.txt b.txt > ab.txt
A vous maintenant de combiner et créer vos propres remix!
!!Les guillemets entre les sont importants sur mac OS pour spécifier toutes les classes de caractères. Plus d'info ici: https://ss64.com/bash/tr.html ↩
Pour pouvoir utiliser gshuf
il faut installer le programme Coreutils :brew install coreutils
ou sudo port install coreutils
↩