Command Memento GNU Linux
Command Memento GNU Linux
less fichier1 fichier2 (plus de possibilités) locate "*bar*" Supprimer la route par défaut:
©Copyright 2005, Free Electrons; 2007, Michel Blanc t: tester / lister ip route del default
x: extraire
Afficher les 10 premières lignes d'un fichier:
Peut être distribué librement, selon les termes de la
head 10 fichier
Rediriger sortie de commande j: (dé)compression bzip2 à la volée Tester la connexion réseau avec une machine:
version 2.0 de la licence Creative Commons Paternité - z: (dé)compression gzip à la volée ping 207.46.130.108
Partage sous conditions identiques Rediriger sortie de commande vers un fichier:
(http://creativecommons.org/licenses/by-sa/2.0/fr/deed.fr)
Afficher les 10 dernières lignes d'un fichier: ls *.png > fichiers_image
tail 10 fichier Manipuler des archives zip: Bases d'administration système
Original : http://free- Ajouter la sortie d'une commande à un fichier: zip r archive.zip <files> (créer)
unzip t archive.zip (tester / lister) Redémarrer la machine dans 5 minutes:
electrons.com/training/intro_unix_linux Modèles de noms de fichiers ls *.jpg >> fichiers_image
shutdown r +5
Version modifiée : http://reseau.erasme.org/ unzip archive.zip (extraire)
Remerciements à Hermann J. Beckers et Thierry Grellier. * tous les fichers Rediriger la sortie d'une commande vers
l'entrée d'une autre: Eteindre la machine immédiatement:
Dernière mise à jour: 26 févr. 2007 .* tous les fichiers "cachés" Imprimer
cat *.log | grep erreur shutdown h now
*.log fichiers finissant par '.log'
(ou halt)
Gérer fichiers et répertoires *bug* fichiers avec 'bug' dans leur nom Envoyer fichiers PostScript ou texte sur queue:
*.? fichiers finissant par '.' et suivis d'un Contrôle de tâches lpr Pqueue f1.ps f2.txt (local printer)
Créer un répertoire (make directory):
caractère
Gestion des filesystems
mkdir rép Afficher tous les processus exécutés: Lister les tâches d'impression dans queue:
ps ef lpq Pqueue Créer ou supprimer des partitions sur le
Créer des répertoires imbriqués: Gérer le contenu des fichiers premier disque IDE:
mkdir p rép1/rép2 Classement en direct des processus (P, M, T: Annuler la tâche n°123 dans queue: fdisk /dev/hda1
N'afficher que les lignes d'un fichier contenant trie par utilisation Proc, Mém ou Temps CPU): cancel 123 queue
Changer de répertoire (change dir): une expression donnée: top Créer (formater) un système de fichiers ext3:
lprm Pqueue 123
cd nouveau_rép grep expression fichier mkfs.ext3 /dev/hda1
cd .. (répertoire parent) Afficher la mémoire libre:
cd (répertoire personnel) Recherche insensible aux majusc. / minusc.: free Gestion des utilisateurs Créer (formater) un système de fichiers FAT32:
grep i expression fichier mkfs.vfat v F 32 /dev/hda2
cd ~alice (répertoire personnel de alice) Afficher les utilisateurs connectés au système:
Afficher la mémoire virtuelle toutes les n secs: who
Afficher toutes les lignes sauf celles qui vmstat n Monter une partition formatée:
Afficher répertoire courant (print working dir):
contiennent une expression: mkdir /mnt/cleusb (nécessaire une seule fois)
pwd Afficher sous quel utilisateur je suis connecté:
grep v expression fichier Envoyer un signal d'arrêt à un processus: whoami mount /dev/uba1 /mnt/cleusb
Copier un fichier vers un autre: kill <pid> (numéro indiqué par ps)
Recherche récursive dans un rép.: Afficher à quel groupe appartient utilisateur: Monter image de système de fichiers
cp fichier_orig fichier_dest
grep r expression rép Faire tuer un processus par le système: groups utilisateur (loopback)
Copier des fichiers dans un répertoire: kill 9 <pid> mount o loop initrd.img /mnt/initrd
Trier les lignes d'un fichier:
cp fichier1 fichier2 rép Passer à l'utilisateur hulk:
sort fichier Tuer tous processus que l'on a le droit de tuer: su hulk Utiliser un fichier comme un block device
Copier des répertoires entiers (recursively): kill 9 1 losetup /dev/loop0 fichier
Trier, n'afficher qu'1 fois les lignes identiques: losetup d /dev/loop0 (libérer le device)
cp r rép_orig rép_dest Passer au super-utilisateur (root):
sort u fichier (ou uniq) Tuer tous processus appelés windows:
rsync a rép_orig/ rép_dest/ su
uniq c (id. et compte chaque élément) killall windows
sudo i Démonter un système de fichiers:
Créer un lien symbolique: umount /mnt/cleusb
Tuer une application en mode graphique: su (sans changer de rép. ni d'environnement)
ln s fichier_orig lien Droits d'accès aux fichiers xkill (cliquer sur la fenêtre du programme) Créér un volume RAID:
Exécuter une commande en tant que root:
Renommer un fichier, lien ou répertoire: Ajouter droits en écriture au propriétaire: mdadm C /dev/md0 l1 n2 /dev/hda
sudo commande
mv fichier_orig fichier_dest chmod u+w fichier (user, write) Taille de fichiers et partitions /dev/hdb
Supprimer (remove) des fichiers ou des liens: Ajouter droits en lecture au groupe du fichier: Afficher l'espace total occupé sur le disque par Gérer le temps Visualiser l'état d'un volume RAID:
rm fichier1 fichier2 chmod g+r fichier (group, read) des fichiers ou des répertoires (disk usage) mdadm D /dev/md0
Attendre 60 secondes:
du sh rép1 rép2 fichier1 fichier2
Supprimer un répertoire (remove dir): Ajouter droits d'exécution aux autres utilisat.: sleep 60 Marquer un disque comme défaillant:
rmdir rép chmod o+x fichier Nombre de caractères, mots et lignes: mdadm /dev/md0 f /dev/hda
Afficher la date actuelle:
wc fichier (word count)
Supprimer un répertoire non vide (force): Ajouter droits lecture / écriture à tous (all): date Sortir un disque du volume RAID:
rm rf rép chmod a+rw fichier Afficher la taille, le Type, l'espace total et mdadm /dev/md0 r /dev/hda
Mettre à l'heure ntp :
l'espace libre dans la partition courante: ntpdate time.nist.gov
Rendre fich. exécutables exécutables par tous: Ajouter un disque dans un volume:
Afficher les noms de fichiers chmod a+rX *
df Th .
mdadm /dev/md0 a /dev/hda
Mesurer le temps pris par une commande:
Énumérer (list) les fichiers «ordinaires» (ne Afficher cette info pour toutes les partitions: time trouve_prince_charmant beau riche
Rendre le répertoire et tous les fichiers qu'il Préparer un volume physique pour LVM:
commençant pas par .) dans le rép. courant: df Th
contient accessibles par tous les utilisateurs: pvcreate blockdev1 ... blockdevN
ls
chmod R a+rX rép (recursive) Aide sur les commandes
Compresser Créer un volume group LVM:
Afficher une liste détaillée (long): Aide de base (pour la plupart des commandes): vgcreate monvg blockdev1 ... blockdevN
ls l Changer le propriétaire et le groupe d'un Compresser un fichier:
répertoire et tout ce qu'il contient: commande –help (parfois 'h')
bzip2 fichier (meilleur taux de compression) Créer un volume logique LVM de 30Mb:
Énumérer tous (all) les fichiers dans le rép. chown R nouvproprio:nouvgroupe rép gzip fichier Voir le manuel complet d'une commande: lvcreate n vol1 L30M monvg
courant (y compris ceux commençant par .): man grep
ls a Comparer: fichiers, répertoires Décompresser un fichier: help cd (commandes internes du shell) Etendre un volume logique de 5Mb:
bunzip2 fichier.bz2 lvextend L5M /dev/mapper/monvg/vol1
Trier par date (time) (d'abord les plus récents): Comparer 2 fichiers: gunzip fichier.gz
ls t diff fichier1 fichier2 Réseau Réduire un volume logique de 15Mb:
lvreduce L15M /dev/mapper/monvg/vol1
Trier par taille (size) (d'abord les plus gros) Comparer 2 répertoires: Manipuler des archives Vérifier l'état d'un lien Ethernet:
diff r rép1 rép2 ethtools <interface> Créer un volume TrueCrypt (fichier ou device):
ls S Créer une archive compressée (tape archive)
tar jcvf archive.tar.bz2 rép/ (le mieux!) Afficher toutes les interface réseau disponibles: truecrypt c
Affichier en inversant (reverse) l'ordre de tri: Rechercher des fichiers tar zcvf archive.tar.gz rép/ ip link show (Dé)Monter un volume TrueCrypt:
ls r
Rechercher tous les fichiers dans le répertoire Tester (lister) une archive compressée: Assigner une adresse IP à une interface réseau: truecrypt volume /mnt/crypto (-d)
Afficher le contenu des fichiers courant (.) avec log dans leur nom: tar jtvf archive.tar.bz2 ip address add 207.46.130.108 dev eth0
find . name "*log*" Créer un volume luks:
tar ztvf archive.tar.gz cryptsetup luksFormat /dev/ice
Afficher bout à bout le contenu de fichiers: Désactiver une interface réseau:
cat fichier1 fichier2 (concatenate) Trouver tous les fichiers en .pdf dans rép et Extraire les fichiers d'une archive compressée: ip link set dev eth0 down
exécuter une commande sur chacun: Ouvrir un volume luks (monter ensuite crypdv):
tar jxvf archive.tar.bz2 cryptsetup luksOpen /dev/ice cryptdv
Afficher le contenu de plusieurs fichiers (en find . name "*.pdf" exec xpdf {} ';' Définir une passerelle par défaut:
tar zxvf archive.tar.gz
Expressions régulières aller à la prochaine occurrence du (en mode insertion)
Vi Emacs
*
dans grep, vi, sed, ... les caractères ?, +, {, |, (, mot sous le curseur <ctrnx><ctrll> propose une complétion
et ) doivent être précédés d'un antislash ( \) # aller à l'occurence précédente du pour la ligne entière (en mode
mot sous le curseur insertion)
. n'importe quel caractère Modes <ctrlr>=op insère le résultat de l'opération
Sortir, sauver
* caractère précédent 0 fois ou + les commandes ce cette section sont précédées
i (<ins>) mode insertion Remplacer (mode insertion)
de <ctrl-x>
+ caractère précédent 1 fois au moins <esc> mode commande J fusionner deux lignes
? le caractère précédent 0 ou 1 fois o ajouter une ligne après la ligne :m,ns/a/b/g remplace a par b entre les lignes <ctrlf> ouvrir un fichier
K voir la page de man du mot sous le
{n} le caractère précédent n fois courante et passer en insersion m et n <ctrls> sauver le fichier
curseur
{m,n} le caractère précédent de m à n fois :1,$s/a/b/g remplace a par b dans tout le <ctrlw>fi enregistrer sous fi
ga affiche la valeur ascii du caractère
fichier
{n,} le caractère précédent n fois ou plus Sortir, sauver :%s/a/b/g idem
gf ouvre le fichier sous le curseur <ctrlc> quitter
[az] un caractère en minuscule <ctrla> incrémente le nombre sous le
:w sauver le fichier
[azAZ] une lettre curseur Déplacements
[09] un chiffre
:w nom sauver dans le fichier nom Signets <ctrlx> décrémente le nombre sous le
:w>>nom sauver à la fin du fichier nom <ctrla> début de ligne
^/$ le début/la fin de ligne mx crée le signet x curseur
:q quitter sans sauver <ctrle> fin (end) de ligne
| séparateur (ou logique) 'x va au signet x :help aide
:q! quitter de force sans sauver <ctrl> mot suivant
[[:alnum:]] [[:alpha:]] ou [[:digit:]] d'x coupe jusqu'au signet x c comme d, mais passe en mode
:x (:wq) sauver et quitter <ctrl> mot précédent
[[:digit:]] [09] '. aller à la dernière ligne éditée insertion
:e nom ferme le fichier courant et édite le <esc> < début du fichier
[[:alpha:]] [[:upper:]] ou [[:lower:]] . répète la dernière commande
fichier nom <esc> > fin du fichier
[[:space:]] espace ou tabulation
:e! nom ferme le fichier courant de force Macros :Ex ouvre l'explorateur de fichiers
[[:lower:]] [az] ([[:upper:]] : [AZ]) :Sex ouvre l'explorateur de fichiers dans
et édite le fichier nom qx enregistre la macro x
[[:print:]] caractère imprimable ou espace un split
[[:xdigit:]] [AFaf09]
:e! annule tous les changements et q termine l'enregistrement de la Copier, couper, coller
revient au fichier original macro
@x invoque la macro x
Invoquer vi <ctrlespace> pose une marque de début
Raccourcis bash Déplacements Apprendre vi
<ctrlk> couper (kill) la fin de la ligne
n@x invoque n fois la macro x
<ctrla> début de ligne vimtutor fr <ctrly> coller (yank)
h déplacement vers la droite <ctrlw> coupe de la marque au curseur
<ctrle> fin (end) de ligne
j déplacement vers le bas Registres Ouvrir un fichier distant <ctrld> efface (delete) le caractère à droite
<ctrl> mot suivant
k déplacement vers le haut :reg liste les registres et leur contenus vi scp://user@host//path/to/file du curseur
<ctrl> mot précédent
l déplacement vers la gauche "n sélectionne le registre n vi ftp://user@host/path/to/file <esc>d efface le mot à droite du curseur
<ctrlk> couper (kill) la fin de la ligne
^^ début de ligne "nd$ coupe la fin de la ligne courante et
<ctrly> coller (yank) Multi-file edit (passer d'un fichier au suivant
<ctrld> efface (delete) le caractère à droite
$ fin de ligne la sauve dans le registre n par :n) Numération
gg première ligne (ou 1G) "np colle le contenu du registre n vi fichier1 fichier2 ...
du curseur <ctrlu>n cmd exécute n fois cmd
G dernière ligne
<esc>d efface le mot à droite du curseur
<ctrlt> transposer deux caractères
nG ligne n (ou :n) Shell Utiliser la version graphique de vim
Rechercher
w mot suivant gvim
<esc>t transpose le mot précédent et le :!cmd exécuter cmd dans un shell
b mot précédent <ctrls>motif rechercher (search) motif
suivant :%!cmd remplace la totalité du buffer par le
<ctrlf> page suivante Variables .vimrc <ctrls> recherche l'occurrence
<ctrlr> rechercher dans l'historique résultat de la commande cmd
<ctrlb> page précédente Utiliser l'indentation automatique suivante
<ctrll> effacer l'écran (équivalent à clear) exécutée sur le buffer
fx aller après le prochain caractère x set autoindent <ctrlr> motif recherche arrière
<ctrld> envoie le caractère 'fin de fichier' :r!cmd insère le résultat de cmd
de la ligne !'xcmd exécute la commande shell cmd sur
<ctrlc> arrêter la commande en cours tx aller avant le prochain caractère x
le texte jusqu'au signet x
Taille de l'indentation Remplacer
<ctrlz> stopper la commande en cours set tabstop=4
de la ligne :shell démarre un shell sous vi <esc>% remplacer
<tab> complète l'élément H aller en haut de l'écran set shiftwidth=4
<tab><tab>affiche les complétions possibles en réponse à la question : y remplace, n ne
M aller au milieu de l'écran
L aller en bas de l'écran
Fenêtres (splits) Affichage de la parenthèse/ du crochet/de remplace pas, ! remplace toutes les
Historique et job control bash les commandes :q, :w, ... s'appliquent dans l'accolade correspondant occurrences
chaque fenêtre set showmatch
!! ré-exécuter la dernière commande Copier, couper, coller Shell
!texte exécuter la dernière commande :sp fic coupe (split) l'écran en deux et Utilise la cloche visuelle plutôt que le beep
x coupe le caractère sous le curseur charge fic dans la 2° moitié set noerrorbells <esc>xshell démarre un shell
commençant par texte yy copie la ligne courante entière
!n exécuter la commande numéro n :vsp fic coupe l'écran en deux verticalement set vb <esc>!cmd exécute cmd
y^ copie la ligne du début au curseur et charge fic dans la 2° moitié <esc>|cmd exécute cmd sur le contenu de la
cmd & exécuter la commande cmd en Affiche/n'affiche pas les correspondances de
y$ copie la ligne du curseur à la fin région marquée
arrière plan recherches en surbrillance
yw copie le mot suivant les commandes ci-dessous doivent être
fg %n mettre le travail n en avant plan set hls
dd coupe la ligne courante entière précédées de <ctrl-w> Buffers
(sans argument : le dernier travail) set nohls
d^ coupe la ligne du début au curseur <ctrlw> passe au split suivant
bg %n mettre le travail n en arrière plan <ctrlx>b passe au buffer suivant
d$ coupe la ligne du curseur à la fin k passe au split supérieur Recherche incrémentale en cours de frappe
(sans argument : le dernier travail) <ctrlx>bnom passer au buffer nom
dw coupe le mot suivant j passe au split inférieur set incsearch
kill %n terminer le travail n <ctrlx>k supprimer le buffer courant
P colle avant la position courante + augmente la taille du split d'1 ligne
jobs affiche la liste des travaux du shell Permet à vim de fonctionnel en ùode non-
p colle après la position courante (n<ctrlw>+ augmente la taille du
history affiche l'historique des commandes compatible vi Fenêtres
split de n lignes) set nocompatible
Raccourcis less (ou man) Numérations diminue la taille du split d'1 ligne <ctrlx>2 diviser l'écran en 2 fenêtres
vi permet d'appliquer une commande à n zones _ maximise le split courant Utilise la coloration syntaxique <ctrlx>o aller dans l'autre (other) fenêtre
<espace> avance d'une page s coupe l'écran en deux avec le syntax on <ctrlx>1 1 seule fenêtre dans l'écran
nyy copie les n lignes suivantes
<return> avance d'une ligne contenu de la fenêtre courante
ndd coupe les n lignes suivantes Définit les raccourcis <ctrl-j> et <ctrl-k> pour
n<return> avance de n lignes n ajoute un split vide Divers
nyw coupe les n mots suivants passer d'une fenêtre à l'autre en la maximisant
b recule (back) d'une page
ndw coupe les n mots suivants map <CJ> <CW>j<CW>_ <ctrlx>u annuler la dernière commande
nb recule de n lignes
... Divers map <CK> <CW>k<CW>_
q quitter less <ctrlg> annuler une commande en cours
u annuler Définit le raccourci <F10> pour enregistrer le <ctrlt> transposer deux caractères
/texte rechercher la chaine texte
Rechercher <ctrlr> refaire fichier et quitter <esc>t transpose le mot précédent et le
n rechercher l'occurence suivante
/motif recherche motif vers le bas <ctrll> redessiner l'écran map <F10> :wq<CR> suivant
> va au début du fichier
?motif recherche motif vers le haut <ctrlg> affiche des informations sur le <ctrll> centre l'écran sur la ligne courante
< va à la fin du fichier
n recherche la prochaine occurrence fichier
v edite le fichier en cours
p recherche l'occurrence précédente <ctrln> propose une complétion sur un mot
!command exécute command dans un shell