8/2/2019 Commandes UNIX
1/2
Mmento GNU/Linux
Copyright 2005, Free Electrons; 2007, Michel Blanc
Peut tre distribu librement, selon les termes de laversion 2.0 de la licence Creative Commons Paternit -Partage sous conditions identiques(http://creativecommons.org/licenses/by-sa/2.0/fr/deed.fr )
Original :http://free-electrons.com/training/intro_unix_linux
Version modifie : http://reseau.erasme.org/Remerciements Hermann J. Beckers et Thierry Grellier.Dernire mise jour: 26 fvr. 2007
Grer fichiers et rpertoires
Crer un rpertoire (make directory):
mkdir r
pCrer des rpertoires imbriqus:mkdir -p rp1/rp2
Changer de rpertoire (change dir):cd nouveau_rpcd ..(rpertoire parent)cd (rpertoire personnel)cd ~alice(rpertoire personnel de alice)
Afficher rpertoire courant (print working dir):pwd
Copier un fichier vers un autre:cp fichier_orig fichier_dest
Copier des fichiers dans un rpertoire:cp fichier1 fichier2 rp
Copier des rpertoires entiers (recursively):cp -r rp_orig rp_destrsync -a rp_orig/ rp_dest/
Crer un lien symbolique:ln -s fichier_orig lien
Renommer un fichier, lien ou rpertoire:mv fichier_orig fichier_dest
Supprimer (remove) des fichiers ou des liens:rm fichier1 fichier2
Supprimer un rpertoire (remove dir):rmdir rp
Supprimer un rpertoire non vide ( force):rm -rf rp
Afficher les noms de fichiers
numrer (list) les fichiers ordinaires (necommenant pas par .) dans le rp. courant:ls
Afficher une liste dtaille (long):ls -l
numrer tous (all) les fichiers dans le rp.courant (y compris ceux commenant par .):ls -a
Trier par date (time) (d'abord les plus rcents):ls -t
Trier par taille (size) (d'abord les plus gros)ls -S
Affichier en inversant (reverse) l'ordre de tri:ls -r
Afficher le contenu des fichiersAfficher bout bout le contenu de fichiers:cat fichier1 fichier2 (concatenate)
Afficher le contenu de plusieurs fichiers (en
faisant une pause chaque page):more fichier1 fichier2less fichier1 fichier2 (plus de possibilits)
Afficher les 10 premires lignes d'un fichier:head -10 fichier
Afficher les 10 dernires lignes d'un fichier:tail -10 fichier
Modles de noms de fichiers* tous les fichers.* tous les fichiers "cachs"*.log fichiers finissant par '.log'*bug* fichiers avec 'bug' dans leur nom*.? fichiers finissant par '.' et suivis d'uncaractre
Grer le contenu des fichiersN'afficher que les lignes d'un fichier contenantune expression donne:grep expression fichier
Recherche insensible aux majusc. / minusc.:grep -i expression fichier
Afficher toutes les lignes sauf celles quicontiennent une expression:grep -v expression fichier
Recherche rcursive dans un rp.:grep -r expression rp
Trier les lignes d'un fichier:sort fichier
Trier, n'afficher qu'1 fois les lignes identiques:sort -u fichier (ou uniq)uniq -c (id. et compte chaque lment)
Droits d'accs aux fichiersAjouter droits en criture au propritaire:chmod u+w fichier (user, write)
Ajouter droits en lecture au groupe du fichier:chmod g+r fichier (group, read)
Ajouter droits d'excution aux autres utilisat.:chmod o+x fichier
Ajouter droits lecture / criture tous (all):chmod a+rw fichier
Rendre fich. excutables excutables par tous:chmod a+rX *
Rendre le rpertoire et tous les fichiers qu'ilcontient accessibles par tous les utilisateurs:chmod -R a+rX rp (recursive)
Changer le propritaire et le groupe d'unrpertoire et tout ce qu'il contient:chown -R nouvproprio:nouvgroupe rp
Comparer: fichiers, rpertoires
Comparer 2 fichiers:diff fichier1 fichier2
Comparer 2 rpertoires:diff -r rp1 rp2
Rechercher des fichiersRechercher tous les fichiers dans le rpertoirecourant (.) avec log dans leur nom:find . -name "*log*"
Trouver tous les fichiers en .pdf dans rp etexcuter une commande sur chacun:find . -name "*.pdf" -exec xpdf {} ';'
Recherche rapide dans tout systme: (utilise unindex, les fichiers rcents peuvent manquer):locate "*bar*"
Rediriger sortie de commande
Rediriger sortie de commande vers un fichier:ls *.png > fichiers_image
Ajouter la sortie d'une commande un fichier:ls *.jpg >> fichiers_image
Rediriger la sortie d'une commande versl'entre d'une autre:cat *.log | grep erreur
Contrle de tches
Afficher tous les processus excuts:ps -ef
Classement en direct des processus (P, M, T:trie par utilisation Proc, Mm ou Temps CPU):top
Afficher la mmoire libre:free
Afficher la mmoire virtuelle toutes les n secs:vmstat n
Envoyer un signal d'arrt un processus:kill (numro indiqu par ps)
Faire tuer un processus par le systme:kill -9
Tuer tous processus que l'on a le droit de tuer:kill -9 -1
Tuer tous processus appelswindows:killall windows
Tuer une application en mode graphique:xkill (cliquer sur la fentre du programme)
Taille de fichiers et partitions
Afficher l'espace total occup sur le disque pardes fichiers ou des rpertoires (diskusage)du -sh rp1 rp2 fichier1 fichier2
Nombre de caractres, mots et lignes:wc fichier (word count)
Afficher la taille, le Type, l'espace total etl'espace libre dans la partition courante:df -Th .
Afficher cette info pour toutes les partitions:df -Th
CompresserCompresser un fichier:bzip2 fichier (meilleur taux de compression)gzip fichier
Dcompresser un fichier:bunzip2 fichier.bz2gunzip fichier.gz
Manipuler des archives
Crer une archive compresse (tape archive)tar jcvf archive.tar.bz2 rp/ (le mieux!)tar zcvf archive.tar.gz rp/
Tester (lister) une archive compresse:tar jtvf archive.tar.bz2tar ztvf archive.tar.gz
Extraire les fichiers d'une archive compresse:tar jxvf archive.tar.bz2tar zxvf archive.tar.gz
Options de tar:c: crert: tester / listerx: extrairej: (d)compression bzip2 la volez: (d)compressiongzip la vole
Manipuler des archives zip:zip -r archive.zip (crer)unzip -t archive.zip (tester / lister)unzip archive.zip (extraire)
ImprimerEnvoyer fichiers PostScript ou texte sur queue:lpr -Pqueue f1.ps f2.txt (local printer)
Lister les tches d'impression dans queue:lpq -Pqueue
Annuler la tche n123 dans queue:cancel 123 queuelprm -Pqueue 123
Gestion des utilisateursAfficher les utilisateurs connects au systme:
who
Afficher sous quel utilisateur je suis connect:whoami
Afficher quel groupe appartient utilisateur:groups utilisateur
Passer l'utilisateur hulk:su - hulk
Passer au super-utilisateur (root):su -sudo -isu (sans changer de rp. ni d'environnement)
Excuter une commande en tant que root:sudo commande
Grer le tempsAttendre 60 secondes:sleep 60
Afficher la date actuelle:date
Mettre l'heure ntp :ntpdate time.nist.gov
Mesurer le temps pris par une commande:time trouve_prince_charmant -beau -riche
Aide sur les commandesAide de base (pour la plupart des commandes):commande help (parfois '-h')
Voir le manuel complet d'une commande:man grephelp cd (commandes internes du shell)
RseauVrifier l'tat d'un lien Ethernet:ethtools
Afficher toutes les interface rseau disponibles:ip link show
Assigner une adresse IP une interface rseau:ip address add 207.46.130.108 dev eth0
Dsactiver une interface rseau:ip link set dev eth0 down
Dfinir une passerelle par dfaut:
ip route add default via 192.168.0.1
Supprimer la route par dfaut:ip route del default
Tester la connexion rseau avec une machine:ping 207.46.130.108
Bases d'administration systme
Redmarrer la machine dans 5 minutes:shutdown -r +5
Eteindre la machine immdiatement:shutdown -h now(ou halt)
Gestion des filesystems
Crer ou supprimer des partitions sur lepremier disque IDE:fdisk /dev/hda1
Crer (formater) un systme de fichiers ext3:mkfs.ext3 /dev/hda1
Crer (formater) un systme de fichiers FAT32:mkfs.vfat -v -F 32 /dev/hda2
Monter une partition formate:mkdir /mnt/cleusb (ncessaire une seule fois)mount /dev/uba1 /mnt/cleusb
Monter image de systme de fichiers(loopback)mount -o loop initrd.img /mnt/initrd
Utiliser un fichier comme un block devicelosetup /dev/loop0 fichierlosetup -d /dev/loop0 (librer le device)
Dmonter un systme de fichiers:
umount /mnt/cleusbCrr un volume RAID:mdadm -C /dev/md0 -l1 -n2 /dev/hda/dev/hdb
Visualiser l'tat d'un volume RAID:mdadm -D /dev/md0
Marquer un disque comme dfaillant:mdadm /dev/md0 -f /dev/hda
Sortir un disque du volume RAID:mdadm /dev/md0 -r /dev/hda
Ajouter un disque dans un volume:mdadm /dev/md0 -a /dev/hda
Prparer un volume physique pour LVM:pvcreate blockdev1 ... blockdevN
Crer un volume group LVM:vgcreate monvg blockdev1 ... blockdevN
Crer un volume logique LVM de 30Mb:lvcreate -n vol1 -L30M monvg
Etendre un volume logique de 5Mb:lvextend -L5M /dev/mapper/monvg/vol1
Rduire un volume logique de 15Mb:lvreduce -L15M /dev/mapper/monvg/vol1
Crer un volume TrueCrypt (fichier ou device):truecrypt -c
(D)Monter un volume TrueCrypt:truecrypt volume /mnt/crypto (-d)
Crer un volume luks:cryptsetup luksFormat /dev/ice
Ouvrir un volume luks (monter ensuite crypdv):cryptsetup luksOpen /dev/ice cryptdv
http://creativecommons.org/licenses/by-sa/2.0/fr/deed.frhttp://creativecommons.org/licenses/by-sa/2.0/fr/deed.frhttp://creativecommons.org/licenses/by-sa/2.0/fr/deed.frhttp://free-electrons.com/training/intro_unix_linuxhttp://free-electrons.com/training/intro_unix_linuxhttp://free-electrons.com/training/intro_unix_linuxhttp://free-electrons.com/training/intro_unix_linuxhttp://free-electrons.com/training/intro_unix_linuxhttp://creativecommons.org/licenses/by-sa/2.0/fr/deed.fr8/2/2019 Commandes UNIX
2/2
Expressions rguliresdans grep, vi, sed, ... les caractres ?, +, {, |, (,et ) doivent tre prcds d'un antislash (\)
. n'importe quel caractre* caractre prcdent 0 fois ou ++ caractre prcdent 1 fois au moins? le caractre prcdent 0 ou 1 fois{n} le caractre prcdent n fois{m,n} le caractre prcdent de m n fois{n,} le caractre prcdent n fois ou plus[a-z] un caractre en minuscule[a-zA-Z] une lettre[0-9] un chiffre^/$ le dbut/la fin de ligne| sparateur (ou logique)
[[:alnum:]] [[:alpha:]] ou [[:digit:]][[:digit:]] [0-9][[:alpha:]] [[:upper:]] ou [[:lower:]][[:space:]] espace ou tabulation[[:lower:]][a-z] ([[:upper:]] : [A-Z])[[:print:]] caractre imprimable ou espace[[:xdigit:]] [A-Fa-f0-9]
Raccourcis bash dbut de ligne fin (end) de ligne mot suivant mot prcdent couper (kill) la fin de la ligne coller (yank) efface (delete) le caractre droite
du curseurd efface le mot droite du curseur transposer deux caractrest transpose le mot prcdent et le
suivant rechercher dans l'historique effacer l'cran (quivalent clear) envoie le caractre 'fin de fichier' arrter la commande en cours stopper la commande en cours complte l'lmentaffiche les compltions possibles
Historique et job control bash
!! r-excuter la dernire commande!texte excuter la dernire commande
commenant par texte!n excuter la commande numro ncmd & excuter la commande cmd en
arrire planfg %n mettre le travail nen avant plan
(sans argument : le dernier travail)bg %n mettre le travail nen arrire plan
(sans argument : le dernier travail)
kill %n terminer le travail njobs affiche la liste des travaux du shellhistory affiche l'historique des commandes
Raccourcis less (ou man) avance d'une page avance d'une lignen avance de nlignesb recule (back) d'une pagenb recule de n lignesq quitter less/texte rechercher la chaine texten rechercher l'occurence suivante> va au dbut du fichier< va la fin du fichierv edite le fichier en cours!command excute command dans un shell
Vi
Modesi () mode insertion mode commandeo ajouter une ligne aprs la ligne
courante et passer en insersion
Sortir, sauver:w sauver le fichier:w nom sauver dans le fichier nom:w>>nom sauver la fin du fichier nom:q quitter sans sauver:q! quitter de force sans sauver:x (:wq) sauver et quitter:e nom ferme le fichier courant et dite le
fichier nom:e! nom ferme le fichier courant de force
et dite le fichier nom:e! annule tous les changements et
revient au fichier original
Dplacementsh dplacement vers la droitej dplacement vers le bask dplacement vers le hautl dplacement vers la gauche^^ dbut de ligne$ fin de lignegg premire ligne (ou 1G)G dernire lignenG ligne n (ou :n)
w mot suivantb mot prcdent page suivante page prcdentefx aller aprs le prochain caractre x
de la lignetx aller avant le prochain caractre x
de la ligneH aller en haut de l'cranM aller au milieu de l'cranL aller en bas de l'cran
Copier, couper, coller
x coupe le caractre sous le curseuryy copie la ligne courante entirey^ copie la ligne du dbut au curseury$ copie la ligne du curseur la finyw copie le mot suivantdd coupe la ligne courante entired^ coupe la ligne du dbut au curseurd$ coupe la ligne du curseur la f indw coupe le mot suivantP colle avant la position courantep colle aprs la position courante
Numrationsvi permet d'appliquer une commande n zones
nyy copie les nlignes suivantesndd coupe les nlignes suivantesnyw coupe les nmots suivantsndw coupe les nmots suivants...
Rechercher/motif recherche motif vers le bas?motif recherche motif vers le hautn recherche la prochaine occurrencep recherche l'occurrence prcdente
* aller la prochaine occurrence dumot sous le curseur
# aller l'occurence prcdente dumot sous le curseur
Remplacer:m,ns/a/b/g remplace a par b entre les lignes
m et n:1,$s/a/b/g remplace a par b dans tout le
fichier:%s/a/b/g idem
Signetsmx cre le signet x'x va au signet x
d'x coupe jusqu'au signet x'. aller la dernire ligne dite
Macrosqx enregistre la macro xq termine l'enregistrement de la
macro@x invoque la macro xn@x invoque n fois la macro x
Registres:reg liste les registres et leur c ontenus"n slectionne le registre n"nd$ coupe la fin de la ligne courante et
la sauve dans le registre n"np colle le contenu du registre n
Shell:!cmd excuter cmddans un shell
:%!cmd remplace la totalit du buffer par lersultat de la commande cmdexcute sur le buffer
:r!cmd insre le rsultat de cmd!'xcmd excute la commande shell cmdsur
le texte jusqu'au signet x:shell dmarre un shell sous vi
Fentres (splits)les commandes :q, :w, ... s'appliquent danschaque fentre
:sp fic coupe (split) l'cran en deux etcharge ficdans la 2 moiti
:vsp fic coupe l'cran en deux verticalementet charge ficdans la 2 moiti
les commandes ci-dessous doivent treprcdes de passe au split suivantk passe au split suprieur
j passe au split infrieur+ augmente la taille du split d'1 ligne(n+ augmente la taille dusplit de nlignes)
- diminue la taille du split d'1 ligne_ maximise le split courant
s coupe l'cran en deux avec lecontenu de la fentre courante
n ajoute un split vide
Diversu annuler refaire redessiner l'cran affiche des informations sur le
fichier propose une compltion sur un mot
(en mode insertion) propose une compltion
pour la ligne entire (en modeinsertion)
=op insre le rsultat de l'opration(mode insertion)
J fusionner deux lignesK voir la page de man du mot sous le
curseurga affiche la valeur ascii du caractregf ouvre le fichier sous le curseur incrmente le nombre sous le
curseur dcrmente le nombre sous le
curseur:help aide
c comme d, mais passe en modeinsertion. rpte la dernire commande:Ex ouvre l'explorateur de fichiers:Sex ouvre l'explorateur de fichiers dans
un split
Invoquer viApprendre vivimtutor fr
Ouvrir un fichier distantvi scp://user@host//path/to/filevi ftp://user@host/path/to/file
Multi-file edit (passer d'un fichier au suivantpar :n)vi fichier1 fichier2 ...
Utiliser la version graphique de vimgvim
Variables .vimrcUtiliser l'indentation automatiqueset autoindent
Taille de l'indentationset tabstop=4set shiftwidth=4
Affichage de la parenthse/ du crochet/del'accolade correspondantset showmatch
Utilise la cloche visuelle plutt que le beepset noerrorbellsset vb
Affiche/n'affiche pas les correspondances derecherches en surbrillanceset hlsset nohls
Recherche incrmentale en cours de frappeset incsearch
Permet vim de fonctionnel en ode non-compatible viset nocompatible
Utilise la coloration syntaxiquesyntax on
Dfinit les raccourcis et pourpasser d'une fentre l'autre en la maximisantmap j_map k_
Dfinit le raccourci pour enregistrer lefichier et quittermap :wq
Emacs
Sortir, sauverles commandes ce cette section sont prcdesde
ouvrir un fichier sauver le fichierfienregistrer sous fi quitter
Dplacements dbut de ligne fin (end) de ligne mot suivant mot prcdent < dbut du fichier > fin du fichier
Copier, couper, coller pose une marque de dbut couper (kill) la fin de la ligne coller (yank) coupe de la marque au curseur efface (delete) le caractre droite
du curseurd efface le mot droite du curseur
Numrationn cmdexcute nfois cmd
Recherchermotifrechercher (search) motif recherche l'occurrence
suivante motif recherche arrire
Remplacer% remplaceren rponse la question : yremplace, nneremplace pas, !remplace toutes lesoccurrences
Shellxshell dmarre un shell!cmd excute cmd|cmd excute cmdsur le contenu de la
rgion marque
Buffersb passe au buffer suivantbnompasser au buffer nom
k supprimer le buffer courant
Fentres2 diviser l'cran en 2 fentreso aller dans l'autre (other) fentre1 1 seule fentre dans l'cran
Diversu annuler la dernire commande annuler une commande en cours transposer deux caractrest transpose le mot prcdent et le
suivant centre l'cran sur la ligne courante
Top Related