You are on page 1of 2

Mmento GNU/Linux

Copyright 2005, Free Electrons; 2007, Michel Blanc


Peut tre distribu librement, selon les termes de la
version 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://freeelectrons.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):
mkdirrp
Crer des rpertoires imbriqus:
mkdirprp1/rp2
Changer de rpertoire (change dir):
cdnouveau_rp
cd..(rpertoire parent)
cd(rpertoire personnel)
cd~alice (rpertoire personnel de alice)
Afficher rpertoire courant (print working dir):
pwd
Copier un fichier vers un autre:
cpfichier_origfichier_dest
Copier des fichiers dans un rpertoire:
cpfichier1fichier2rp
Copier des rpertoires entiers (recursively):
cprrp_origrp_dest
rsyncarp_orig/rp_dest/

faisant une pause chaque page):


morefichier1fichier2
lessfichier1fichier2(plus de possibilits)

Recherche rapide dans tout systme: (utilise un


index, les fichiers rcents peuvent manquer):
locate"*bar*"

Afficher les 10 premires lignes d'un fichier:


head10fichier

Rediriger sortie de commande

Afficher les 10 dernires lignes d'un fichier:


tail10fichier

Modles de noms de fichiers


*tous les fichers
.*tous les fichiers "cachs"
*.logfichiers finissant par '.log'
*bug*fichiers avec 'bug' dans leur nom
*.?fichiers finissant par '.' et suivis d'un
caractre

Grer le contenu des fichiers


N'afficher que les lignes d'un fichier contenant
une expression donne:
grepexpressionfichier
Recherche insensible aux majusc. / minusc.:
grepiexpressionfichier
Afficher toutes les lignes sauf celles qui
contiennent une expression:
grepvexpressionfichier
Recherche rcursive dans un rp.:
greprexpressionrp
Trier les lignes d'un fichier:
sortfichier
Trier, n'afficher qu'1 fois les lignes identiques:
sortufichier(ou uniq)
uniqc (id. et compte chaque lment)

Crer un lien symbolique:


lnsfichier_origlien

Droits d'accs aux fichiers

Renommer un fichier, lien ou rpertoire:


mvfichier_origfichier_dest

Ajouter droits en criture au propritaire:


chmodu+wfichier(user, write)

Supprimer (remove) des fichiers ou des liens:


rmfichier1fichier2

Ajouter droits en lecture au groupe du fichier:


chmodg+rfichier(group, read)

Supprimer un rpertoire (remove dir):


rmdirrp

Ajouter droits d'excution aux autres utilisat.:


chmodo+xfichier

Supprimer un rpertoire non vide (force):


rmrfrp

Ajouter droits lecture / criture tous (all):


chmoda+rwfichier

Afficher les noms de fichiers

Rendre fich. excutables excutables par tous:


chmoda+rX*

numrer (list) les fichiers ordinaires (ne


commenant pas par .) dans le rp. courant:
ls
Afficher une liste dtaille (long):
lsl
numrer tous (all) les fichiers dans le rp.
courant (y compris ceux commenant par .):
lsa

Rendre le rpertoire et tous les fichiers qu'il


contient accessibles par tous les utilisateurs:
chmodRa+rXrp(recursive)

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 vers
l'entre d'une autre:
cat*.log|greperreur

Bases d'administration systme

Imprimer

Afficher tous les processus excuts:


psef

Lister les tches d'impression dans queue:


lpqPqueue

Classement en direct des processus (P, M, T:


trie par utilisation Proc, Mm ou Temps CPU):
top

Annuler la tche n123 dans queue:


cancel123queue
lprmPqueue123

Afficher la mmoire libre:


free

Gestion des utilisateurs

Afficher la mmoire virtuelle toutes les n secs:


vmstatn
Envoyer un signal d'arrt un processus:
kill<pid>(numro indiqu par ps)
Faire tuer un processus par le systme:
kill9<pid>
Tuer tous processus que l'on a le droit de tuer:
kill91
Tuer tous processus appels windows:
killallwindows
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 par
des fichiers ou des rpertoires (disk usage)
dushrp1rp2fichier1fichier2
Nombre de caractres, mots et lignes:
wcfichier(word count)
Afficher la taille, le Type, l'espace total et
l'espace libre dans la partition courante:
dfTh.
Afficher cette info pour toutes les partitions:
dfTh

Compresser

Changer le propritaire et le groupe d'un


rpertoire et tout ce qu'il contient:
chownRnouvproprio:nouvgrouperp

Compresser un fichier:
bzip2fichier(meilleur taux de compression)
gzipfichier

Comparer: fichiers, rpertoires

Dcompresser un fichier:
bunzip2fichier.bz2
gunzipfichier.gz

Trier par taille (size) (d'abord les plus gros)


lsS

Comparer 2 rpertoires:
diffrrp1rp2

Affichier en inversant (reverse) l'ordre de tri:


lsr

Rechercher des fichiers

Crer une archive compresse (tape archive)


tarjcvfarchive.tar.bz2rp/(le mieux!)
tarzcvfarchive.tar.gzrp/

Rechercher tous les fichiers dans le rpertoire


courant (.) avec log dans leur nom:
find.name"*log*"

Tester (lister) une archive compresse:


tarjtvfarchive.tar.bz2
tarztvfarchive.tar.gz

Trouver tous les fichiers en .pdf dans rp et


excuter une commande sur chacun:
find.name"*.pdf"execxpdf{}';'

Extraire les fichiers d'une archive compresse:


tarjxvfarchive.tar.bz2
tarzxvfarchive.tar.gz

Afficher le contenu de plusieurs fichiers (en

Manipuler des archives zip:


ziprarchive.zip<files>(crer)
unziptarchive.zip(tester / lister)
unziparchive.zip(extraire)

Envoyer fichiers PostScript ou texte sur queue:


lprPqueuef1.psf2.txt(local printer)

Comparer 2 fichiers:
difffichier1fichier2

Afficher bout bout le contenu de fichiers:


catfichier1fichier2(concatenate)

iprouteadddefaultvia192.168.0.1

Contrle de tches

Trier par date (time) (d'abord les plus rcents):


lst

Afficher le contenu des fichiers

Options de tar:
c: crer
t: tester / lister
x: extraire
j: (d)compression bzip2 la vole
z: (d)compression gzip la vole

Manipuler des archives

Afficher les utilisateurs connects au systme:


who
Afficher sous quel utilisateur je suis connect:
whoami
Afficher quel groupe appartient utilisateur:
groupsutilisateur
Passer l'utilisateur hulk:
suhulk
Passer au super-utilisateur (root):
su
sudoi
su(sans changer de rp. ni d'environnement)
Excuter une commande en tant que root:
sudocommande

Grer le temps
Attendre 60 secondes:
sleep60
Afficher la date actuelle:
date
Mettre l'heure ntp :
ntpdatetime.nist.gov
Mesurer le temps pris par une commande:
timetrouve_prince_charmantbeauriche

Aide sur les commandes


Aide de base (pour la plupart des commandes):
commandehelp(parfois 'h')
Voir le manuel complet d'une commande:
mangrep
helpcd(commandes internes du shell)

Rseau
Vrifier l'tat d'un lien Ethernet:
ethtools<interface>
Afficher toutes les interface rseau disponibles:
iplinkshow

Supprimer la route par dfaut:


iproutedeldefault
Tester la connexion rseau avec une machine:
ping207.46.130.108

Redmarrer la machine dans 5 minutes:


shutdownr+5
Eteindre la machine immdiatement:
shutdownhnow
(ou halt)

Gestion des filesystems


Crer ou supprimer des partitions sur le
premier disque IDE:
fdisk/dev/hda1
Crer (formater) un systme de fichiers ext3:
mkfs.ext3/dev/hda1
Crer (formater) un systme de fichiers FAT32:
mkfs.vfatvF32/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)
mountoloopinitrd.img/mnt/initrd
Utiliser un fichier comme un block device
losetup/dev/loop0fichier
losetupd/dev/loop0 (librer le device)
Dmonter un systme de fichiers:
umount/mnt/cleusb
Crr un volume RAID:
mdadmC/dev/md0l1n2/dev/hda
/dev/hdb
Visualiser l'tat d'un volume RAID:
mdadmD/dev/md0
Marquer un disque comme dfaillant:
mdadm/dev/md0f/dev/hda
Sortir un disque du volume RAID:
mdadm/dev/md0r/dev/hda
Ajouter un disque dans un volume:
mdadm/dev/md0a/dev/hda
Prparer un volume physique pour LVM:
pvcreateblockdev1...blockdevN
Crer un volume group LVM:
vgcreatemonvgblockdev1...blockdevN
Crer un volume logique LVM de 30Mb:
lvcreatenvol1L30Mmonvg
Etendre un volume logique de 5Mb:
lvextendL5M/dev/mapper/monvg/vol1
Rduire un volume logique de 15Mb:
lvreduceL15M/dev/mapper/monvg/vol1
Crer un volume TrueCrypt (fichier ou device):
truecryptc

(D)Monter un volume TrueCrypt:


Assigner une adresse IP une interface rseau: truecryptvolume/mnt/crypto (-d)
ipaddressadd207.46.130.108deveth0
Crer un volume luks:
cryptsetupluksFormat/dev/ice
Dsactiver une interface rseau:
iplinksetdeveth0down
Ouvrir un volume luks (monter ensuite crypdv):
cryptsetupluksOpen/dev/icecryptdv
Dfinir une passerelle par dfaut:

Expressions rgulires

dans 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
[az]
un caractre en minuscule
[azAZ] une lettre
[09]
un chiffre
^/$
le dbut/la fin de ligne
|
sparateur (ou logique)
[[:alnum:]][[:alpha:]] ou [[:digit:]]
[[:digit:]][09]
[[:alpha:]][[:upper:]] ou [[:lower:]]
[[:space:]]espace ou tabulation
[[:lower:]] [az]([[:upper:]] : [AZ])
[[:print:]]caractre imprimable ou espace
[[:xdigit:]][AFaf09]

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 curseur
<esc>d
efface le mot droite du curseur
<ctrlt> transposer deux caractres
<esc>t
transpose le mot prcdent et le
suivant
<ctrlr> rechercher dans l'historique
<ctrll> effacer l'cran (quivalent clear)
<ctrld> envoie le caractre 'fin de fichier'
<ctrlc> arrter la commande en cours
<ctrlz> stopper la commande en cours
<tab>
complte l'lment
<tab><tab>affiche les compltions possibles
<ctrla>
<ctrle>
<ctrl>
<ctrl>
<ctrlk>
<ctrly>
<ctrld>

Historique et job control bash


!!
!texte
!n
cmd&
fg%n
bg%n
kill%n
jobs
history

r-excuter la dernire commande


excuter la dernire commande
commenant par texte
excuter la commande numro n
excuter la commande cmd en
arrire plan
mettre le travail n en avant plan
(sans argument : le dernier travail)
mettre le travail n en arrire plan
(sans argument : le dernier travail)
terminer le travail n
affiche la liste des travaux du shell
affiche l'historique des commandes

Raccourcis less (ou man)


<espace>
<return>
n<return>
b
nb
q
/texte
n
>
<
v
!command

avance d'une page


avance d'une ligne
avance de n lignes
recule (back) d'une page
recule de n lignes
quitter less
rechercher la chaine texte
rechercher l'occurence suivante
va au dbut du fichier
va la fin du fichier
edite le fichier en cours
excute command dans un shell

Vi

*
#

Modes
i(<ins>) mode insertion
<esc>
mode commande
o
ajouter une ligne aprs la ligne
courante et passer en insersion

Sortir, sauver
:w
:wnom
:w>>nom
:q
:q!
:x(:wq)
:enom
:e!nom
:e!

sauver le fichier
sauver dans le fichier nom
sauver la fin du fichier nom
quitter sans sauver
quitter de force sans sauver
sauver et quitter
ferme le fichier courant et dite le
fichier nom
ferme le fichier courant de force
et dite le fichier nom
annule tous les changements et
revient au fichier original

h
j
k
l
^^
$
gg
G
nG
w
b
<ctrlf>
<ctrlb>
fx
tx
H
M
L

dplacement vers la droite


dplacement vers le bas
dplacement vers le haut
dplacement vers la gauche
dbut de ligne
fin de ligne
premire ligne (ou 1G)
dernire ligne
ligne n (ou :n)
mot suivant
mot prcdent
page suivante
page prcdente
aller aprs le prochain caractre x
de la ligne
aller avant le prochain caractre x
de la ligne
aller en haut de l'cran
aller au milieu de l'cran
aller en bas de l'cran

Copier, couper, coller


x
yy
y^
y$
yw
dd
d^
d$
dw
P
p

coupe le caractre sous le curseur


copie la ligne courante entire
copie la ligne du dbut au curseur
copie la ligne du curseur la fin
copie le mot suivant
coupe la ligne courante entire
coupe la ligne du dbut au curseur
coupe la ligne du curseur la fin
coupe le mot suivant
colle avant la position courante
colle aprs la position courante

Numrations

vi permet d'appliquer une commande n zones


nyy
ndd
nyw
ndw
...

copie les n lignes suivantes


coupe les n lignes suivantes
coupe les n mots suivants
coupe les n mots suivants

Rechercher
/motif
?motif
n
p

recherche
recherche
recherche
recherche

Remplacer
:m,ns/a/b/gremplace a par b entre les lignes
m et n
:1,$s/a/b/gremplace a par b dans tout le
fichier
:%s/a/b/g idem

Signets
mx
'x
d'x
'.

motif vers le bas


motif vers le haut
la prochaine occurrence
l'occurrence prcdente

cre le signet x
va au signet x
coupe jusqu'au signet x
aller la dernire ligne dite

Macros
qx
q
@x
n@x

Dplacements

aller la prochaine occurrence du


mot sous le curseur
aller l'occurence prcdente du
mot sous le curseur

enregistre la macro x
termine l'enregistrement de la
macro
invoque la macro x
invoque n fois la macro x

Registres
:reg
"n
"nd$
"np

liste les registres et leur contenus


slectionne le registre n
coupe la fin de la ligne courante et
la sauve dans le registre n
colle le contenu du registre n

Shell
:!cmd
:%!cmd
:r!cmd
!'xcmd
:shell

excuter cmd dans un shell


remplace la totalit du buffer par le
rsultat de la commande cmd
excute sur le buffer
insre le rsultat de cmd
excute la commande shell cmd sur
le texte jusqu'au signet x
dmarre un shell sous vi

Fentres (splits)

les commandes :q, :w, ... s'appliquent dans


chaque fentre
:spfic
:vspfic

coupe (split) l'cran en deux et


charge fic dans la 2 moiti
coupe l'cran en deux verticalement
et charge fic dans la 2 moiti

les commandes ci-dessous doivent tre


prcdes de <ctrl-w>
<ctrlw> passe au split suivant
k
passe au split suprieur
j
passe au split infrieur
+
augmente la taille du split d'1 ligne
(n<ctrlw>+ augmente la taille du
split de n lignes)

diminue la taille du split d'1 ligne


_
maximise le split courant
s
coupe l'cran en deux avec le
contenu de la fentre courante
n
ajoute un split vide

Divers
u
<ctrlr>
<ctrll>
<ctrlg>
<ctrln>

annuler
refaire
redessiner l'cran
affiche des informations sur le
fichier
propose une compltion sur un mot

(en mode insertion)


<ctrnx><ctrll> propose une compltion
pour la ligne entire (en mode
insertion)
<ctrlr>=op insre le rsultat de l'opration
(mode insertion)
J
fusionner deux lignes
K
voir la page de man du mot sous le
curseur
ga
affiche la valeur ascii du caractre
gf
ouvre le fichier sous le curseur
<ctrla> incrmente le nombre sous le
curseur
<ctrlx> dcrmente le nombre sous le
curseur
:help
aide
c
comme d, mais passe en mode
insertion
.
rpte la dernire commande
:Ex
ouvre l'explorateur de fichiers
:Sex
ouvre l'explorateur de fichiers dans
un split

Invoquer vi
Apprendre vi
vimtutorfr
Ouvrir un fichier distant
viscp://user@host//path/to/file
viftp://user@host/path/to/file

Emacs
Sortir, sauver

les commandes ce cette section sont prcdes


de <ctrl-x>
<ctrlf> ouvrir un fichier
<ctrls> sauver le fichier
<ctrlw>fienregistrer sous fi
<ctrlc> quitter

Dplacements
<ctrla>
<ctrle>
<ctrl>
<ctrl>
<esc><
<esc>>

dbut de ligne
fin (end) de ligne
mot suivant
mot prcdent
dbut du fichier
fin du fichier

Copier, couper, coller


<ctrlespace>pose une marque de dbut
<ctrlk> couper (kill) la fin de la ligne
<ctrly> coller (yank)
<ctrlw> coupe de la marque au curseur
<ctrld> efface (delete) le caractre droite
du curseur
<esc>d
efface le mot droite du curseur

Multi-file edit (passer d'un fichier au suivant


par :n)
vifichier1fichier2...

Numration

Utiliser la version graphique de vim


gvim

Rechercher

Variables .vimrc
Utiliser l'indentation automatique
setautoindent
Taille de l'indentation
settabstop=4
setshiftwidth=4
Affichage de la parenthse/ du crochet/de
l'accolade correspondant
setshowmatch
Utilise la cloche visuelle plutt que le beep
setnoerrorbells
setvb
Affiche/n'affiche pas les correspondances de
recherches en surbrillance
sethls
setnohls
Recherche incrmentale en cours de frappe
setincsearch
Permet vim de fonctionnel en ode noncompatible vi
setnocompatible
Utilise la coloration syntaxique
syntaxon
Dfinit les raccourcis <ctrl-j> et <ctrl-k> pour
passer d'une fentre l'autre en la maximisant
map<CJ><CW>j<CW>_
map<CK><CW>k<CW>_
Dfinit le raccourci <F10> pour enregistrer le
fichier et quitter
map<F10>:wq<CR>

<ctrlu>ncmdexcute n fois cmd

<ctrls>motifrechercher (search) motif


<ctrls> recherche l'occurrence
suivante
<ctrlr> motif recherche arrire

Remplacer
<esc>%
remplacer
en rponse la question : y remplace, n ne
remplace pas, ! remplace toutes les
occurrences

Shell
<esc>xshelldmarre un shell
<esc>!cmd excute cmd
<esc>|cmdexcute cmd sur le contenu de la
rgion marque

Buffers
<ctrlx>b passe au buffer suivant
<ctrlx>bnompasser au buffer nom
<ctrlx>k supprimer le buffer courant

Fentres
<ctrlx>2 diviser l'cran en 2 fentres
<ctrlx>o aller dans l'autre (other) fentre
<ctrlx>1 1 seule fentre dans l'cran

Divers
<ctrlx>uannuler la dernire commande
<ctrlg> annuler une commande en cours
<ctrlt> transposer deux caractres
<esc>t
transpose le mot prcdent et le
suivant
<ctrll> centre l'cran sur la ligne courante

You might also like