Table des matières

, , , , ,

Les commandes de base en console linux

Bravo très bon site. Nathaniel le mexicain sournois

Introduction

Cette page vise à présenter une liste non exhaustive de commandes connues et souvent utilisées.

La plupart des commandes présentées ici sont documentées dans votre système. Il vous suffit de taper dans une console man suivi d'un espace et du nom de la commande pour avoir toutes les informations sur le fonctionnement de la commande voulue. Pour plus d'informations à ce sujet, reportez-vous à la page « Le manuel ».

Notions de relativité des chemins de fichier

Le titre est un peu compliqué, mais le principe est simple : un fichier peut être référencé de manière relative, par rapport au répertoire courant, ou de manière absolue par rapport à la racine. Le premier caractère de la référence permet d'effectuer la distinction : les références absolues commencent toujours par le caractère /, alors que les références relatives commencent par tout autre caractère valide pour un nom de fichier.
Ainsi, les deux commandes ci-dessous sont équivalentes et peuvent être utilisées l'une comme l'autre pour renommer le fichier MonFichier localisé dans le répertoire personnel de l'utilisateur (/home/user) :

user@mulet:~$ mv MonFichier NouveauNomDuFichier
user@mulet:/srv $ mv /home/user/MonFichier /home/user/NouveauNomDuFichier

Dans le premier exemple, l'invite système (user@mulet:~$) montre que le répertoire courant est le répertoire personnel de l'utilisateur ("~", caractère spécial équivalent /home/user) ; la référence au fichier à renommer est exprimée de manière relative par rapport à ce répertoire. Dans le second exemple, l'invite système montre que le répertoire courant est /srv ; pour désigner le même fichier, il faut donc utiliser une référence absolue : /home/user/MonFichier (qui aurait tout aussi bien pu être exprimée par ~/MonFichier).

Comme vous le constatez, l'espace sert à séparer les directives d'une commande. Si dans votre ligne de commande un chemin comporte un espace dans le nom du répertoire et/ou du fichier, encadrez alors la totalité du chemin avec des guillemets ou des apostrophes. Exemple :
user@mulet:/srv $ mv /home/user/MonFichier '/home/user/Nouveau NomDuFichier'

Raccourcis pratiques

Les caractères spéciaux ~, . et .. correspondent respectivement au répertoire personnel de l'utilisateur, au répertoire courant et au répertoire parent. Ils permettent tous les trois de simplifier l'expression de références absolues.
Ainsi pour déplacer le fichier /UnRep/MonFichier respectivement dans le répertoire de l'utilisateur (/home/user), le répertoire courant (/rep1/sousrep2) ou le sous-répertoire toto du répertoire parent (/rep1/toto), on pourra utiliser les commandes ci-dessous :

user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier ~
user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier .
user@mulet:/rep1/sousrep2 $ mv /UnRep/MonFichier ../toto/

Méta-caractères

Pour de nombreuses commandes, il est souvent utile de faire appel à des méta-caractères : Il y a évidemment le caractère * qui remplace un ou plusieurs caractères (ou même aucun des fois!) : g

Les commandes Unix de base à connaître par cœur

man

ls

Remarque :
Il existe également une commande dir quasi identique à la commande ls. Elle s'utilise de la même façon, avec les mêmes options, et les pages man (manuel) les 2 commandes sont d'ailleurs identiques. Seul l'affichage par défaut de la sortie est différent avec dir :

La commande « ls -C -b » produira une sortie identique à la commande dir employée sans options.

cd

mv

cp

rm

Attention cette commande est très dangereuse (voir commandes dangereuses). Exécutez-la uniquement si vous savez ce que vous faites !

mkdir

rmdir

top

pwd

ln

find

simple

Placez-vous dans le répertoire à partir duquel la recherche récursive doit être effectuée et faites :

avancé

grep

locate

Son utilisation - assez simple - est détaillée ici : recherche_ligne_commande

cat

more

less

id

La commande id affiche les informations utilisateur et de groupe pour un utilisateur spécifié, ou si aucun utilisateur n'est spécifié, elle affiche les informations sur l'utilisateur courant

  id ubuntu-user
uid=1001(ubuntu-user) gid=1001(ubuntu-user) groupes=1001(ubuntu-user),29(audio)

commandes système

chmod

chown

chgrp

free

mount

umount

sudo

ps

pensez à utiliser avec grep pour limiter la liste :
ps -aux | grep tuxpaint

ne vous retournera que les processus contenant tuxpaint
Avec l'utilisation de grep une ligne supplémentaire apparaît contenant: grep -E –color=auto tuxpaint correspondant à l'action de la recherche avec grep, à ignorer. Si vous ne voulez pas que ça apparaisse:

ps aux | egrep '[t]uxpaint'

kill / killall

L'option par défaut de kill est TERM, c'est pourquoi il n'est pas nécessaire de le préciser explicitement. kill et kill -TERM sont donc équivalents.

shutdown

Il semblerait que shutdown now ne fonctionne plus, ni sur Ubuntu, ni sur OpenBSD (du moins sur les miens). Cependant, la commande shutdown -P now fonctionne.
En effet, il suffit de remplacer "now" par "0" soit 0 minutes et le tour est joué.

passwd

groups

adduser

deluser

usermod

df

fdisk

du

uptime

lspci

lsusb

uname

apt-get

Ne pas confondre avec apt, plus jeune, qui a beaucoup moins d'​options.

apt-cache

file

systemctl

Voir aussi

Liens internes

Tutoriels vidéos

Une série de tutoriels vidéos concernant les commandes Unix est en cours de réalisation, voici les 3 vidéos disponibles qui donnent de bonnes bases.

À noter que 2 autres vidéos vont venir sur le thème des chaînages de commandes et les scripts bash !

Liens externes


Contributeurs : CyberSDF et Navista