Commandes shell sous Linux

Exercices

  1. Créer un fichier test.dat en copiant le fichier /etc/passwd.
    cp /etc/passwd test.dat
  2. Donner le type de fichier et sa taille.
    file test.dat
    du test.dat
  3. Donner le nombre de lignes et de caractères du fichiers.
    wc -l test.dat
    wc -c test.dat
  4. Compresser le fichier avec "zip" et "bzip2". Comparer les différentes tailles.
    zip test test.dat (crée un autre fichier test.zip)
    bzip2 test.dat (compresse directement le fichier n test.dat.bz2)
  5. Afficher le contenu à l'écran.
    cat test.dat
  6. Afficher les 5 premières lignes puis les 5 dernières lignes.
    head -5 test.dat
    tail -5 test.dat
  7. Trier le fichier par ordre inverse alphabétique.
    sort test.dat
  8. Séparer le fichier en petit fichier de 10 lignes chacun.
    split -l 10 test.dat (crée des fichiers xa, xb, etc de 10 lignes chacun)
  9. Changer tous les ";" par des ":" du fichier test.dat.
    cat test.dat | tr ":" ";"
  10. Recommencer les exercices 5 à 9 mais en enregistrant le résultat dans le même fichier test2.dat.
    il suffit d'ajouter >> test2.dat à la fin de chaque commande
  11. Changer tous les "w" par "y" du fichier test.dat et enregistrer le résultat dans test3.dat.
    cat test.dat | tr "w" "y" > test3.dat
  12. Comparer les fichiers test.dat et test3.dat.
    diff test.dat test3.dat ou
    cmp test.dat test3.dat
  13. En utilisant le pipe, chainer les commande tail et head pour sortir la ligne 10 à 15 du fichier test.dat.
    head -15 test.dat | tail -5
  14. Afficher les login, uid et shell du fichier test.dat
    (Rappel : le fichier passwd a la structure suivante
    login:passwd:uid:gid:geko:path:shell)
    cut -d":" -f1,3,7 test.dat
  15. Sortir la liste des shells du fichier test.dat
    cut -d":" -f7 test.dat | cut -d"/" -f3 | sort |uniq
Modifié le: lundi 15 juillet 2013, 23:30