Fiches:La ligne de commande: Difference between revisions

From Lea Linux
Jump to navigation Jump to search
mNo edit summary
 
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Catégorie:Fiches administration]]
[[Catégorie:Commandes Unix]]
= La ligne de commande =
= La ligne de commande =
Par [[Utilisateur:LeaJice|Jean-Christophe]]


== Introduction ==
== Introduction ==
Line 6: Line 11:


Cependant, afin de faire des réglages plus fins, ou non prévus par les interfaces graphiques, ou simplement lancer des scripts ou des programmes dont vous ne trouvez pas l'icône dans le menu, la ligne de commande doit être utilisée.
Cependant, afin de faire des réglages plus fins, ou non prévus par les interfaces graphiques, ou simplement lancer des scripts ou des programmes dont vous ne trouvez pas l'icône dans le menu, la ligne de commande doit être utilisée.
Les programmes ouvrant une ligne de commande se nomment par exemple '''xterm''', '''konsole'''... En général vous trouverez une icone pour lancer le terminal dans les menus de votre distribution.


[[Image:Xterm eeepc.png||La console de l'EeePC]]<br />
[[Image:Xterm eeepc.png||La console de l'EeePC]]<br />
Line 23: Line 30:
! width="50%" | Exemples
! width="50%" | Exemples
|-
|-
|'''<code>cd</code>'''
|'''<b>cd</b>'''
|'''<code>cd</code>'''
|'''<b>cd</b>'''
|change le répertoire courant.
|change le répertoire courant.
|<code>cd ..</code><br />    - va dans le répertoire parent du répertoire courant
|<div class="code">cd ..</div><br />    - va dans le répertoire parent du répertoire courant


<code>cd /home/user/.nsmail</code><br />    - va dans le répertoire désigné
<div class="code">cd /home/user/.nsmail</div><br />    - va dans le répertoire désigné
|-
|-
|'''<code>ls</code>'''
|'''<b>ls</b>'''
|'''<code>dir</code>'''
|'''<b>dir</b>'''
|affiche le contenu d'un répertoire
|affiche le contenu d'un répertoire
|<code>ls</code><br />    - affiche le contenu du répertoire courant
|<div class="code">ls</div><br />    - affiche le contenu du répertoire courant


<code>ls -l</code><br />    - affiche le contenu du répertoire courant de manière détaillée
<div class="code">ls -l</div><br />    - affiche le contenu du répertoire courant de manière détaillée


<code>ls -a /home/user</code><br />    - affiche le contenu du répertoire désigné (ainsi que les fichiers cachés)
<div class="code">ls -a /home/user</div><br />    - affiche le contenu du répertoire désigné (ainsi que les fichiers cachés)
 
Voir [[Shell#La commande ls|cet article]] qui détaille la commande ls.
|-
|-
|'''<code>cp</code>'''
|'''<b>cp</b>'''
|'''<code>copy</code>'''<br />'''<code>xcopy</code>'''
|'''<b>copy</b>'''<br />'''<b>xcopy</b>'''
|copie un ou plusieurs fichiers
|copie un ou plusieurs fichiers
|<code>cp toto /tmp</code><br />    - copie le fichier toto dans le répertoire <code>/tmp</code>
|<div class="code">cp toto /tmp</div><br />    - copie le fichier toto dans le répertoire <b>/tmp</b>


<code>cp toto titi</code><br />    - copie le fichier <code>toto</code> sur le fichier <code>titi</code>
<div class="code">cp toto titi</div><br />    - copie le fichier <b>toto</b> sur le fichier <b>titi</b>


<code>cp -R /home/user /tmp/bak</code><br />    - copie le répertoire <code>/home/user</code> ainsi que tout ce qu'il contient dans <code>/tmp/bak</code>
<div class="code">cp -R /home/user /tmp/bak</div><br />    - copie le répertoire <b>/home/user</b> ainsi que tout ce qu'il contient dans <b>/tmp/bak</b>
|-
|-
|'''<code>rm</code>'''
|'''<b>rm</b>'''
|'''<code>del</code>'''
|'''<b>del</b>'''
|efface un ou plusieurs fichiers
|efface un ou plusieurs fichiers
|<code>rm toto titi</code><br />    - efface les fichiers <code>toto</code> et <code>titi</code>
|<div class="code">rm toto titi</div><br />    - efface les fichiers <b>toto</b> et <b>titi</b>


<code>rm -f toto titi</code><br />    - efface les fichiers <code>toto</code> et <code>titi</code> sans demander confirmation
<div class="code">rm -f toto titi</div><br />    - efface les fichiers <b>toto</b> et <b>titi</b> sans demander confirmation
|-
|-
|'''<code>rm -rf</code>'''
|'''<b>rm -rf</b>'''
|'''<code>deltree</code>'''
|'''<b>deltree</b>'''
|efface un répertoire et son contenu
|efface un répertoire et son contenu
|<code>rm -rf /tmp/*</code><br />    - efface (sans demander de confirmation) tous les fichiers et répertoires de <code>/tmp</code>
|<div class="code">rm -rf /tmp/*</div><br />    - efface (sans demander de confirmation) tous les fichiers et répertoires de <b>/tmp</b>
|-
|-
|'''<code>mkdir</code>'''
|'''<b>mkdir</b>'''
|'''<code>md</code> ou <code>mkdir</code>'''
|'''<b>md</b> ou <b>mkdir</b>'''
|crée un répertoire
|crée un répertoire
|<code>mkdir /home/user/mes_documents</code><br />    - crée le répertoire <code>mes_documents</code> dans le sous répertoire <code>/home/user</code> (éviter de mettre des espaces dans les noms de fichiers ou de répertoires)
|<div class="code">mkdir /home/user/mes_documents</div><br />    - crée le répertoire <b>mes_documents</b> dans le sous répertoire <b>/home/user</b> (éviter de mettre des espaces dans les noms de fichiers ou de répertoires)
|-
|-
|'''<code>rmdir</code>'''
|'''<b>rmdir</b>'''
|'''<code>rm</code>'''
|'''<b>rm</b>'''
|efface un répertoire s'il est vide
|efface un répertoire s'il est vide
|<code>rmdir /home/user/.nsmail</code><br />    - efface le répertoire <code>.nsmail</code> de <code>/home/user</code> si celui-ci est vide
|<div class="code">rmdir /home/user/.nsmail</div><br />    - efface le répertoire <b>.nsmail</b> de <b>/home/user</b> si celui-ci est vide
|-
|-
|'''<code>mv</code>'''
|'''<b>mv</b>'''
|'''<code>ren</code>'''<br />'''<code>move</code>'''
|'''<b>ren</b>'''<br />'''<b>move</b>'''
|déplace ou renomme  un ou des fichiers
|déplace ou renomme  un ou des fichiers
|<code>mv tata titi</code><br />    - renomme tata en titi
|<div class="code">mv tata titi</div><br />    - renomme tata en titi


<code>mv * *.bak</code><br />    - ne fonctionne pas !!!!
<div class="code">mv * *.bak</div><br />    - ne fonctionne pas !!!!


<code>mv * /tmp/bak</code><br />    - déplace tous les fichiers du répertoire courant vers le répertoire  <code>/tmp/bak</code>
<div class="code">mv * /tmp/bak</div><br />    - déplace tous les fichiers du répertoire courant vers le répertoire  <b>/tmp/bak</b>
|}
|}


Line 84: Line 93:
== Les répertoires, les fichiers et les disques ==
== Les répertoires, les fichiers et les disques ==


;La racine : Sous Linux il n'y a pas de lettre représentant le lecteur, comme le <code>C:</code> de Windows. En fait la notion de support physique des données est cachée, au sein d'une arborescence dont la racine est <code>/</code>. Il y a donc une seule racine, là où sous Windows chaque lecteur (C:, D:, E: etc.) est une sorte de racine.
=== La racine ===
;Le séparateur : c'est <code>/</code> et non <code>\</code>. Par exemple <code>/home/user</code> représente le répertoire ''user'', dans le répertoire ''home'', lui-même dans la racine.
 
;Le répertoire courant : il est représenté par un point : <code>.</code>.
Sous GNU/Linux il n'y a pas de lettre représentant le lecteur, comme le <b>C:</b> de Windows. En fait la notion de support physique des données est cachée, au sein d'une arborescence dont la racine est <b>/</b>. Il y a donc une seule racine, là où sous Windows chaque lecteur (C:, D:, E: etc.) est une sorte de racine.
;Le répertoire parent : il est représenté par deux points : <code>..</code>. Exemple : <code>cd ..</code> pour remonter dans l'arborescence.
 
;Le répertoire de l'utilisateur : il est représenté par un tilde : <code>~</code>. Par exemple <code>cd ~</code> pour aller dans son répertoire utilisateur. Le tilde est synonyme de /home/user (où ''user'' est votre nom d'utilisateur).
=== Le séparateur ===
;Les fichiers cachés : ce sont ceux dont le nom commence par un point. Si vous voulez cacher un fichier, il suffit donc de le renommer. Par exemple <code>mv ~/monfichier ~/.monfichier</code>
 
;Les jokers : dans les noms de fichiers ou de répertoires, les jokers <code>*</code> et <code>?</code> sont autorisés. <code>*</code> représente un nombre quelconque de caractères, alors que <code>?</code> n'en représente qu'un seul.  Par exemple <code>*.jpg</code> représente tous les fichiers se terminant par jpg (par exemple <code>mv *.jpg *.png *.gif images</code> pour déplacer toutes les images dans le répertoire ''images''. D'autres jokers plus avancés sont présentés dans l'article sur le [[Shell#Commandes pour débuter]].
C'est <b>/</b> et non <b>\</b>. Par exemple <b>/home/user</b> représente le répertoire ''user'', dans le répertoire ''home'', lui-même dans la racine.
 
=== Le répertoire courant ===
 
Il est représenté par un point : <b>.</b>. Notez que pour lancer un programme situé dans le répertoire courant (si celui-ci ne fait pas partie des chemins de recherche par défaut [variable d'environnement PATH]), taper <b>./ma-commande</b>
 
=== Le répertoire parent ===
 
Il est représenté par deux points : <b>..</b>. Exemple : <b>cd ..</b> pour remonter dans l'arborescence.
 
=== Le répertoire de l'utilisateur ===
 
Il est représenté par un tilde : <b>~</b>. Par exemple <b>cd ~</b> pour aller dans son répertoire utilisateur. Le tilde est synonyme de /home/user (où ''user'' est votre nom d'utilisateur).
 
=== Les fichiers cachés ===
 
Ce sont ceux dont le nom commence par un point. Si vous voulez cacher un fichier, il suffit donc de le renommer. Par exemple <b>mv ~/monfichier ~/.monfichier</b>
 
=== Les jokers ===
 
Dans les noms de fichiers ou de répertoires, les jokers <b>*</b> et <b>?</b> sont autorisés. <b>*</b> représente un nombre quelconque de caractères, alors que <b>?</b> n'en représente qu'un seul.  Par exemple <b>*.jpg</b> représente tous les fichiers se terminant par jpg (par exemple <b>mv *.jpg *.png *.gif images</b> pour déplacer toutes les images dans le répertoire ''images''. D'autres jokers plus avancés sont présentés dans l'article sur le [[Shell#Commandes pour débuter|Shell]].


== Astuces d'utilisation ==
== Astuces d'utilisation ==
;La complétion automatique : en tapant sur la touche <key>Tab</key>, la ligne de commande va compléter ou proposer la liste des noms de fichiers disponibles.
;Les raccourcis clavier : lisez [[Shell#Raccourcis|cet article]].
:Si votre distribution dispose de plus de bash-completion, vous pourrez compléter bien plus que des noms de fichiers (des options de ligne de commande, des arguments connus, etc.)
;Enregistrer la sortie d'une commande dans un fichier : lisez [[Shell#Redirections|cet article]].
;Créer un alias : on peut créer des alias afin de simplifier des commandes qu'on utilise souvent, par exemple taper <b>ll</b> au lieu de <b>ls -l</b> ou <b>c</b> au lieu de <b>clear</b> (équivalent du <b>cls</b> du DOS, qui efface l'écran). Pour celà, lisez [[Shell#Aliases et variables d'environnement|cet article]].
 
<br/>
<br/>
'''<b>[[Fiches:Index|@ Retour à la rubrique Fiches pratiques]]</b>'''
<br/>
 
 
{{Copy|17/07/2008|[[Utilisateur:LeaJice|Jean-Christophe Cardot]]|CC-BY-SA}}

Latest revision as of 16:01, 21 March 2012


La ligne de commande

Par Jean-Christophe

Introduction

Aujourd'hui de nombreux outils graphiques existent pour chaque distribution, qui gèrent de manière automatisée les réglages les plus courants.

Cependant, afin de faire des réglages plus fins, ou non prévus par les interfaces graphiques, ou simplement lancer des scripts ou des programmes dont vous ne trouvez pas l'icône dans le menu, la ligne de commande doit être utilisée.

Les programmes ouvrant une ligne de commande se nomment par exemple xterm, konsole... En général vous trouverez une icone pour lancer le terminal dans les menus de votre distribution.

La console de l'EeePC
La console de l'EeePC

Cette fiche présente les basiques de la ligne de commande. Pour en savoir plus, lisez l'article sur le Shell.

Les commandes usuelles

Attention ! Linux est sensible à la casse. Si la commande est en minuscules, tapez-là en minuscules. Respectez les majuscules et les minuscules dans les noms de fichiers et de répertoires.

Commandes linux équivalent Ms-DosTM à quoi ça sert Exemples
cd cd change le répertoire courant.
cd ..

- va dans le répertoire parent du répertoire courant
cd /home/user/.nsmail

- va dans le répertoire désigné
ls dir affiche le contenu d'un répertoire
ls

- affiche le contenu du répertoire courant
ls -l

- affiche le contenu du répertoire courant de manière détaillée
ls -a /home/user

- affiche le contenu du répertoire désigné (ainsi que les fichiers cachés)

Voir cet article qui détaille la commande ls.

cp copy
xcopy
copie un ou plusieurs fichiers
cp toto /tmp

- copie le fichier toto dans le répertoire /tmp
cp toto titi

- copie le fichier toto sur le fichier titi
cp -R /home/user /tmp/bak

- copie le répertoire /home/user ainsi que tout ce qu'il contient dans /tmp/bak
rm del efface un ou plusieurs fichiers
rm toto titi

- efface les fichiers toto et titi
rm -f toto titi

- efface les fichiers toto et titi sans demander confirmation
rm -rf deltree efface un répertoire et son contenu
rm -rf /tmp/*

- efface (sans demander de confirmation) tous les fichiers et répertoires de /tmp
mkdir md ou mkdir crée un répertoire
mkdir /home/user/mes_documents

- crée le répertoire mes_documents dans le sous répertoire /home/user (éviter de mettre des espaces dans les noms de fichiers ou de répertoires)
rmdir rm efface un répertoire s'il est vide
rmdir /home/user/.nsmail

- efface le répertoire .nsmail de /home/user si celui-ci est vide
mv ren
move
déplace ou renomme un ou des fichiers
mv tata titi

- renomme tata en titi
mv * *.bak

- ne fonctionne pas !!!!
mv * /tmp/bak

- déplace tous les fichiers du répertoire courant vers le répertoire /tmp/bak

Pour d'autres commandes ou plus de détail sur celles-ci, voir l'article sur le Shell.

Les répertoires, les fichiers et les disques

La racine

Sous GNU/Linux il n'y a pas de lettre représentant le lecteur, comme le C: de Windows. En fait la notion de support physique des données est cachée, au sein d'une arborescence dont la racine est /. Il y a donc une seule racine, là où sous Windows chaque lecteur (C:, D:, E: etc.) est une sorte de racine.

Le séparateur

C'est / et non \. Par exemple /home/user représente le répertoire user, dans le répertoire home, lui-même dans la racine.

Le répertoire courant

Il est représenté par un point : .. Notez que pour lancer un programme situé dans le répertoire courant (si celui-ci ne fait pas partie des chemins de recherche par défaut [variable d'environnement PATH]), taper ./ma-commande

Le répertoire parent

Il est représenté par deux points : ... Exemple : cd .. pour remonter dans l'arborescence.

Le répertoire de l'utilisateur

Il est représenté par un tilde : ~. Par exemple cd ~ pour aller dans son répertoire utilisateur. Le tilde est synonyme de /home/user (où user est votre nom d'utilisateur).

Les fichiers cachés

Ce sont ceux dont le nom commence par un point. Si vous voulez cacher un fichier, il suffit donc de le renommer. Par exemple mv ~/monfichier ~/.monfichier

Les jokers

Dans les noms de fichiers ou de répertoires, les jokers * et ? sont autorisés. * représente un nombre quelconque de caractères, alors que ? n'en représente qu'un seul. Par exemple *.jpg représente tous les fichiers se terminant par jpg (par exemple mv *.jpg *.png *.gif images pour déplacer toutes les images dans le répertoire images. D'autres jokers plus avancés sont présentés dans l'article sur le Shell.

Astuces d'utilisation

Les raccourcis clavier
lisez cet article.
Enregistrer la sortie d'une commande dans un fichier
lisez cet article.
Créer un alias
on peut créer des alias afin de simplifier des commandes qu'on utilise souvent, par exemple taper ll au lieu de ls -l ou c au lieu de clear (équivalent du cls du DOS, qui efface l'écran). Pour celà, lisez cet article.



@ Retour à la rubrique Fiches pratiques


Copyright

© 17/07/2008 Jean-Christophe Cardot

Creative Commons License
Creative Commons Attribution iconCreative Commons Share Alike icon
Ce document est publié sous licence Creative Commons
Attribution, Partage à l'identique 4.0 :
https://creativecommons.org/licenses/by-sa/4.0/