Cours 3 - Préambule Unix II

N.B. Les explications de chaque commande ou de chaque bloc de codes sont données dans les commentaires.

Flux d’entrée & de sortie & d’erreur

# flux d’erreur standard ">>" (sortie normal) vs. 2> (canal d’erreur)
cd ~
lsd > sortie.txt 2> erreur.txt
# exercice : transformer tous les n en N d'un fichier et l'enregistrer dans un autre fichier
tr "n" "N" < test.txt > testN.txt
cat testN.txt
# Exercice : majusculiser les données
tr "[[:lower:]]" "[[:upper:]]" < test.txt
BoNjour
BONJOUR

Redirection du flux d’information

Récupérer l’output de la première commande et le renvoyer à la deuxième commande - symbole clé : pipe |

# transformer "é" en "E" puis majusculiser l'output de la première commande
cd ~
tr "é" "E" < test.txt | tr "[[:lower:]]" "[[:upper:]]"
# trier par le premier champ - sort ; filtrage de doublons - uniq
egrep -o "\w+" test.txt | sort | uniq -c
BONJOUR
   1 Bonjour

Sectionner les données par champ

# couper les données en 2 champs par le délimiteur "="
cd ~
echo "la somme de 2+2=4" > test2.txt
cut -f2 -d"=" test2.txt
# utiliser read pour capturer la saisie de l'utilisateur et la stocker dans une variable
echo "nom ?" ;
# read nom;
echo "bonjour $nom"
4
nom ?
bonjour 
article précédent
article suivant