Commandes UNIX

Embed Size (px)

Citation preview

  • 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.fr
  • 8/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