« Commandes UNIX » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
Ligne 235 : Ligne 235 :
<div class=code>
<div class=code>
$ cp mon_fichier /tmp/toto/
$ cp mon_fichier /tmp/toto/
</div>
=== dd ===
<code>dd</code> permet de copier un fichier en effectuant des conversions. Cette commande est très utilisée pour les copies bits à bits.
Exemple : faire une image de sauvegarde d'un CD dans un fichier.
<div class=code>
$ dd if=/dev/cdrom of=image_cd.iso
</div>
</div>



Version du 2 août 2011 à 16:20

Attention ! Cet article est en cours de rédaction. Il n'a donc encore été ni relu, ni corrigé, ni validé par un modérateur.
Léa vous encourage à éditer les articles pour les améliorer ou les corriger.

Les commandes Unix

par Jiel

Introduction

Cette documentation a pour but de recenser les principales commandes UNIX communes à tous les Unices et à GNU/Linux. La liste ne sera peut-être pas exhaustive, mais elle devrait vous mettre un bon pied à l'étrier.

Certaines d'entre elles font partie du shell, d'autres sont des exécutables situés dans /usr/bin ou /usr/local/bin.

Les commandes ci-dessous ont été regroupées par catégories pour plus de clarté, elles sont fournies avec un exemple et éventuellement un lien vers une documentation de Léa donnant plus de précision.

Pour rappel, une commande est un mot clef que l'ont tape dans un shell, souvent suivie de paramètres appelés arguments : des options (habituellement précédées du caractère - pour leur forme courte ou des caractères -- pour leur forme longue) et des chaînes de caractères (très souvent un fichier ou une expression rationnelle).

Il peut être utile de lire la documentation sur Le shell avant de jouer avec les commandes.

Enfin, certaines commandes existent en plusieurs versions. Dans cette documentation, c'est la version GNU ou la version présente sous GNU/Linux qui a été choisie pour les exemples.

Aide et informations

@ Voir sur Léa : Découvrir GNU/Linux - Trouver de l'aide .

man

man affiche le manuel d'une commande. S'il n'y avait qu'une seule commande à connaître, ce serait assurément celle-là.

Exemple : afficher la page de manuel (ci-dessous le début, elles sont généralement très longues) de la commande ls.

$ man ls

LS(1L) Manuel de l'utilisateur Linux LS(1L)


NOM

      ls, dir, vdir - Afficher le contenu d'un répertoire.

SYNOPSIS

      ls [options] [fichier...]
      Options POSIX : [-1acdilqrtuCFR]
      Options  GNU  (forme courte) : [-1abcdfgiklmnopqrstuxABCD­
      FGLNQRSUX] [-w cols] [-T cols]  [-I  motif]  [--full-time]
      [--format={long,verbose,commas,across,vertical,single-col­
      umn}]                  [--sort={none,time,size,extension}]
      [--time={atime,access,use,ctime,status}]
      [--color[={none,auto,always}]] [--help] [--version] [--]

DESCRIPTION

      La commande ls affiche  tout  d'abord  l'ensemble  de  ses
      arguments  fichiers  autres  que  des répertoires. Puis ls
      affiche  l'ensemble  des  fichiers  contenus  dans  chaque
      répertoire  indiqué.   dir et vdir sont des versions de ls
      affichant par défaut leurs résultats  avec  d'autres  for­
      mats.

info

info est une commande GNU, alternative à man, qui permet d'afficher des informations très complètes en anglais sur une commande passée en argument, et de naviguer dans les pages info.

Exemple : Informations (ci-dessous le début) sur la commande d'archivage tar.

$ info tar

File: tar.info, Node: tar invocation, Next: operations, Prev: Tutorial, Up: Top

3 Invoking GNU `tar'
********************

This chapter is about how one invokes the GNU `tar' command, from the command synopsis (*note Synopsis::). There are numerous options, and many styles for writing them. One mandatory option specifies the operation `tar' should perform (*note Operation Summary::), other options are meant to detail how this operation should be performed (*note Option Summary::). Non-option arguments are not always interpreted the same way, depending on what the operation is.

  You will find in this chapter everything about option styles and

rules for writing them (*note Styles::). On the other hand, operations and options are fully described elsewhere, in other chapters. Here, you will find only synthetic descriptions for operations and options, together with pointers to other parts of the `tar' manual.

whatis

whatis affiche la description courtes de la page de manuel d'une commande passée en paramètre.

Exemple : trouver à quoi sert la commande grep.

$ whatis grep

grep (1) - print lines matching a pattern

apropos

apropos ressemble à whatis, mais au lieu de passer le nom exact de la commande en argument, on donne un mot-clef (utile quand on cherche une commande).

Exemple : savoir les commandes qui contiennent le mot-clef « grep ».

$ apropos grep

zgrep (1) - rechercher une expression rationnelle dans des fichiers pouvant être compactés
zipgrep (1) - recherche dans les fichiers d'une archive zip les lignes contenant un motif
bzegrep [bzgrep] (1) - search possibly bzip2 compressed files for a regular expression
bzfgrep [bzgrep] (1) - search possibly bzip2 compressed files for a regular expression
bzgrep (1) - search possibly bzip2 compressed files for a regular expression
egrep [grep] (1) - print lines matching a pattern
fgrep [grep] (1) - print lines matching a pattern
grep (1) - print lines matching a pattern
pgrep (1) - look up or signal processes based on name and other attributes
pkill [pgrep] (1) - look up or signal processes based on name and other attributes
xzgrep (1) - search compressed files for a regular expression
zgrep (1) - search possibly compressed files for a regular expression
zipgrep (1) - search files in a ZIP archive for lines matching a pattern

Remarque : la commande man -k donne le même résultat.

which

which informe où se trouve un programme dans l'arborescence.

Exemple : savoir où est situé le compilateur GCC.

$ which gcc

/usr/bin/gcc

--help et -h

L'option --help (ou -h en forme courte) fonctionne avec presque toutes les commandes. Affiche une aide succincte et liste les arguments qui peuvent être passés à la commande.


Exemple : --help sur la commande shell de Firefox.

$ mozilla-firefox --help

Usage: mozilla-firefox [ options ... ] [URL]

      where options include:

X11 options

       --display=DISPLAY               X display to use
       --sync          Make X calls synchronous
       --no-xshm               Don't use X shared memory extension
       --xim-preedit=STYLE
       --xim-status=STYLE
       --g-fatal-warnings              Make all warnings fatal

Firefox options

       -h or -help             Print this message.
       -v or -version          Print Firefox version.
       -P <profile>            Start with <profile>.
       -migration              Start with migration wizard.
       -ProfileManager         Start with ProfileManager.
       -no-remote              Open new instance, not a new window in running instance.
       -UILocale <locale>      Start with <locale> resources as UI Locale.
       -safe-mode              Disables extensions and themes for this session.
 -jsconsole           Open the Error console.
 -browser            Open a browser window.
 -private            Enable private browsing mode.
 -setDefaultBrowser   Set this app as the default browser.



Navigation dans l'arborescence et recherche

cd

cd (change directory) permet de se déplacer dans l'arborescence.

Exemple : aller dans le répertoire /tmp.

$ cd /tmp

Exemple : reculer dans le répertoire parent.

$ cd ..

ls

ls (list) liste les éléments présents dans un répertoire.

Exemple : lister avec détails la liste des fichiers présents dans le répertoire courant en incluant les fichiers cachés.

$ ls -la total 40 drwx------ 2 jiel users 256 Aug 2 17:07 . drwxr-xr-x 26 bin bin 4096 Jul 28 14:12 .. -rwxr----- 1 jiel users 325 Jul 7 15:30 .profile -rw------- 1 jiel users 476 Aug 2 17:07 .sh_history -rw------- 1 jiel users 18 Aug 2 17:07 .vi_history -rwx------ 1 jiel users 50 Aug 2 17:07 lea.txt

pwd

pwd (print working directory) affiche l'endroit où l'on est dans l'arborscence.

Exemple : où suis-je ?

$ pwd /var/log

Fichiers et répertoires

cp

cp (copy) copie un fichier ou un répertoire dans un autre répertoire.

Exemple : copier un répertoire.

$ cp mon_fichier /tmp/toto/

dd

dd permet de copier un fichier en effectuant des conversions. Cette commande est très utilisée pour les copies bits à bits.

Exemple : faire une image de sauvegarde d'un CD dans un fichier.

$ dd if=/dev/cdrom of=image_cd.iso

Archivage et compression

@ Voir sur Léa : Archivage et compression avec tar, pax, zip, rar etc.

gzip / gunzip

gzip compresse et décompresse un fichier avec l'algorithme Deflate.

Exemple : compresser un fichier.

$ gzip mon_fichier

Exemple : décompresser un fichier gzippé.

$ gzip -d mon_fichier_compresse.gz

Remarque : la commande gunzip peut remplacer gzip -d.

bzip2 / bunzip2

bzip2 compresse un fichier avec l'algorithme bzip2. Son inverse est bunzip2.

Exemple : compresser un fichier.

$ bzip2 mon_fichier

Exemple : décompresser un fichier bzippé.

$ bunzip2 mon_fichier_compresse.bz2

xz

xz compresse et décompresse un fichier avec l'algorithme LZMA.

Exemple : compresser un fichier.

$ xz mon_fichier

Exemple : décompresser un fichier compressé.

$ xz -d mon_fichier_compresse.xz

tar

tar permet d'archiver ou de désarchiver des fichiers. La commande GNU tar est capable de faire également de la compression.

Exemple : archiver et compresser un dossier avec Gunzip.

$ tar cvzf mon_archive.tar.gz dossier1/

Exemple : extraire une archive tar.gz.

$ tar xvzf mon_archive.tar.gz

pax

pax, alternative à tar, permet d'archiver ou de désarchiver des fichiers ainsi que de faire de la compression.

Exemple : archiver un dossier.

$ pax -wf mon_archive.pax -x pax dossier1/

Exemple : extraire une archive pax.

$ pax -rf mon_archive.pax

zip

zip permet de créer et d'extraire des archives compressées au format ZIP.

Exemple : compresser un dossier.

$ zip -r nom_de_larchive.zip dossier

Exemple : décompresser une archive zip.

$ unzip nom_de_larchive.zip

Voir aussi



@ Retour à la rubrique Administration système

Copyright

© 2011 Jiel Beaumadier

Tête de GNU Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale.