User Tools

Site Tools


Sidebar

Sidebar

Accueil

Menu Linux

Menu Windows

Menu Android

I. Partie LINUX

  • Préliminaire

Introduction Linux

LiveCD Linux

  • Installation

LiveCD Ubuntu

Installation Ubuntu

Ubuntu sur Netbook

Installation sur support USB

Installation sans CD-ROM

Installations, mise à jour

Réinstallation/Migration version Ubuntu

Applications Ubuntu

Documentation-Aides

* Aller plus loin

Arborescence Ubuntu

Recherche Ubuntu

Edition Linux

Terminal & Super Utilisateur

Commandes Linux (1)

Commandes Linux (2)

Utilisateurs, groupes, droits

Matériel

Imprimante Linux

Compression-Archivage

Déplacer le /home

Bureau-Gnome

  • Réseau

Connexion Linux

Réseau Linux

Paramétrage routeur

Analyse Réseau - Gestion parc

Partages,Transferts

Disque-Réseau

Contrôle à distance

Serveur Linux

OpenVPN

Sécurité Linux

Migration Linux Petite entreprise

  • Utiliser des applications Windows

Virtualisation

Wine: Applications Windows sous Linux

  • Téléphonie VOIP

Asterisk, TrixBox, Elastix

Routeur double Wan

  • Maintenance, dépannage

Sauvegarde Linux

Synchronisation Linux

Dépannage Ubuntu

Antivirus Linux

Grub

Grub2

Partitions Linux

Fichier fstab

Récupération de fichiers, partitions

  • BDD

BDD Linux

Access/MySQL

Talend Open Studio

II. Partie commune

Présentation

  • Internet

Navigation Internet

Thunderbird (1)

Thunderbird (2)

Thunderbird (3)

Courrier GMail

  • Création de site

Joomla

  • Bureautique

Open Office

  • Graphisme

Picasa

  • Photo

Photo: Théorie

Photo: Pratique

Diaporama, site photos

Retouche: Gimp

  • Multimedia

YouTube

Musique

  • BDD

Access/MySQL

III. Partie WINDOWS

  • Préliminaire

Logiciels Windows

Utilitaires Windows

  • Internet

Connexion Internet

Export OutlookExpress

Changement d'ordinateur

Agenda

Blog: Dotclear

Exploration/Dépannage Internet

  • Création de site

Joomla

Dreamweaver

  • Réseau

Partage Connexion

Partage Fichiers

Partage Imprimante

Transfert Fichiers

  • Dépannage

Prévention-dépannage Windows

  • Divers

Anti-virus

Gravure CD

Installation périphérique Windows

Partitions Windows

Organisation disque dur

Sauvegarde-Synchronisation Windows

Putty

Contrôle à distance

Bash Shell

IV. Partie Android

Sidebar

Smartphone

Messages pour le Web

commandes_linux

Commandes Linux - Partie 1

On aurait tort de se priver de la puissance des lignes de commande Linux. Certes, un gros effort, qui était nécessaire, a été accompli par les développeurs pour faciliter l'abord de Linux avec un interface graphique, mais une fois que l'on a acquis un peu d'aisance, l'interpréteur de commandes se révèle très simple à utiliser et même beaucoup plus puissant que les outils introduits en mode graphique.

Conseil

Les premières fois, survoler d'abord le chapitre pour picorer une ou deux commandes et faire tomber une certaine réticence naturelle en les essayant. Quand on réalise que l'on n'en est pas mort, on peut y revenir progressivement. On finit par y prendre goût (même ceux qui avaient une formation initiale Mac et qui ont longtemps plaint, avec raison, ceux qui faisaient du DOS…). En complément, consulter également:

  • le livre Linux précis et concis de la collection O'Reilly
  • le livre Linux-L'essentiel du code et des commandes de Scott Granneman
  • Linux Pratique Hors-série n° 65 Maîtriser votre système Linux grâce à la ligne de commande
  • Linux Pratique Hors-série n°16 35 commandes pour tirer le meilleur de votre Linux

Remarque préliminaire

»Se reporter également à la partie Droits, utilisateurs, mots de passe où nombre de commandes utiles sont décrites (attribution des droits sur les fichiers/répertoires, les groupes, etc…), ainsi que Terminal & Super Utilisateur sur le terminal.

Déconnexion-Arrêt ordinateur

Pour se déconnecter, différentes commandes sont disponibles. Elles doivent être lancées en mode super-utilisateur.

  • Pour arrêter:
sudo halt     # ou bien init 0 ou encore shutdown now, poweroff
  • Pour redémarrer:
sudo reboot   # ou bien init 6

Fenêtres

  • On peut déplacer une fenêtre à la souris en appuyant en même temps sur Alt.
  • On peut changer la taille d'une fenêtre à la souris en appuyant en même temps sur Alt+Clic Milieu Souris (hors Ubuntu Netbook Remix).

Ceci est valable sur toute fenêtre Ubuntu (terminal ou toute application).

Raccourcis-clavier

Un certain nombre de raccourcis-clavier sont à retenir pour usage quotidien:

  • Alt+Tabulation. Changement de fenêtre (idem Windows). Garder Tab enfoncé. Chaque appui sur Tab amène au choix suivant

  • Alt+F1. Ouverture du menu déroulant Applications

  • Alt+F2. Ouverture d'une fenêtre Lancer une application

* Ctl+Alt+F1 (de F1 à F6). Accès à la console tty1 (de tty1 à tty6) à partir de l'interface graphique

  • Ctl+Alt+F1 (de F1 à F6). Accès à la console tty1 (de tty1 à tty6) à partir d'une console tty
  • Alt+F7. Retour au serveurX (affichage graphique)
  • Alt+Sys+e. En cas de plantage, stoppe les programmes gentiment (la touche Syst est aussi la touche Impr Ecran)
  • Ctrl+Alt+Backspace. Fermeture serveur graphique, jusqu'à U8.10
  • ALT+Syst+K. Fermeture serveur graphique, à partir de U9.04
  • Ctl+P. Imprimer
  • Ctl+W. Fermer
  • Ctl+Q, Alt+F4. Quitter
  • Ctl+C. Annuler commande courante
  • Ctl+Z. Suspendre l'exécution d'une commande (reprise par bg [background])
  • Ctl+D. Dans un terminal, selon le contexte: sortie SSH, retour à l'utilisateur normal, fermer le terminal
  • Pour mémoire: Ctl+C, Ctl+V, mais le copier-coller Linux est tellement plus rapide…
  • Ctl+X. Couper






Syntaxe des commandes

En Linux, les commandes sont de la forme:

commande [option1 option2] argument1 argument2

Les options (naturellement, facultatives) modifient le comportement de la commande alors que les arguments sont les objets sur lesquels la commande s'applique. Les descriptifs des commandes présentent les options entre crochets. On peut en mettre une ou plusieurs options à la suite. Ainsi les options -l -a peuvent aussi se noter -al ou -la.

Un espace sépare chaque partie de la syntaxe de la commande.

 cp -r dossier dossier-bis 

Combinaison de commandes

Pour lancer plusieurs commandes à la suite les unes des autres, on sépare les commandes par un point-virgule encadré d'un espace:

commande1 ; commande2 ; commande3

Pour lancer une séquence de commandes, tout en arrêtant dès que l'une échoue, on utilise &&, le double et commercial:

commande1 && commande2 && commande3

Pour lancer une séquence de commandes, tout en arrêtant dès que l'une réussit, on utilise le symbôle ||, la double barre verticale, symbôle du “OU” logique:

commande1 || commande2 || commande3

Premières commandes

  • whoami donne le nom de l'utilisateur actuel
  • who liste de personnes actuellement connectées au système
guy@userv:~$ who
guy      pts/0        2009-03-05 10:03 (192.168.123.2)
guy      pts/1        2009-03-05 10:04 (192.168.123.2)
jeff     pts/2        2009-03-05 10:15 (192.168.123.7)
  • w (What). Plus complète que who, la commande renvoie, sur la première ligne:
    • la date
    • depuis combien de temps ce système est allumé up
    • le nombre d'utilisateurs simultanés.

Et ensuite par ligne:

  • le login de l'utilisateur: USER
  • le nom de son terminal: TTY
  • ou depuis quelle machine distante s'est-il connecté: FROM
  • à quelle date: LOGIN@
  • depuis combien de temps n'a-il rien tapé: IDLE
  • quelle est sa dernière commande: WHAT
  • guy@Athos-U9:~$ who
    guy      tty4         2009-10-18 17:35
    guy      tty7         2009-10-15 15:52 (:0)
    guy      pts/0        2009-10-19 16:12 (:0.0)
    guy      pts/1        2009-10-19 16:35 (:0.0)
    guy      pts/4        2009-10-19 16:36 (:0.0)
    guy@Athos-U9:~$ w
     16:38:53 up 4 days, 47 min,  5 users,  load average: 0,54, 0,48, 0,40
    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
    guy      tty4     -                Sun17   23:02m  0.28s  0.12s -bash
    guy      tty7     :0               Thu15    3days 33:20   0.62s x-session-manag
    guy      pts/0    :0.0             16:12    3:51   0.19s  0.04s ssh guy@xxx.xxx.
    guy      pts/1    :0.0             16:35    3:15   1.52s  1.37s gksu gedit
    guy      pts/4    :0.0             16:36    0.00s  0.15s  0.01s w
    guy@Athos:~$ 
  • finger donne des précisions sur les utilisateurs connectés ou sur l'utilisateur dont on a mis l'identifiant
guy@Athos:~$ whoami
guy
  • guy@userv:~$ finger
    Login     Name       Tty      Idle  Login Time   Office     Office Phone
    guy       Guy        pts/1          Mar  5 10:04 (192.168.123.2)
    jeff      Jeff       pts/2       5  Mar  5 10:15 (192.168.123.7)
  • env affiche un ensemble de paramétres d'environnement de l'utilisateur courant.
guy@Athos:~$ env
ORBIT_SOCKETDIR=/tmp/orbit-guy
GPG_AGENT_INFO=/tmp/seahorse-O1LdJL/S.gpg-agent:7361:1
SHELL=/bin/bash
TERM=xterm
XDG_SESSION_COOKIE=a3ec1c75d43e532a7d377adb490f3e58-1237224432.138517-1845746754
GTK_RC_FILES=/etc/gtk/gtkrc:/home/guy/.gtkrc-1.2-gnome2
WINDOWID=75497482
USER=guy
LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:
....
  • last affiche un historique des connexions par ordre chronologique inversé
  • hostname renvoie le nom de la machine sur lequel le shell s'exécute (ce nom est enregistré à la fois dans /etc/hostname et dans /etc/hosts)
  • date donne la date et l'heure
guy@Remix9-10~ >date                                                                                             22:59 #1023
lundi 1 février 2010, 23:02:46 (UTC+0100) 
  • pour fixer l'heure à 12h30 et la date au 14 Juin 2010, entrer :
sudo date 061412302010 
  • cal affiche le calendrier du mois courant ou indiqué (format mm yyyy)
guy@Remix9-10:~$ cal février 2010
    février 2010    
lu ma me je ve sa di
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
  • bc ouvre des fonctions de calcul simple. On quitte par Ctl+D.
Athos-U9% bc
bc 1.06.94
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
32*3+21.2
117.2
  • uptime donne depuis combien de temps le système tourne. C'est aussi la première ligne de ce que renvoie la commande w
  • df (disk free) renvoie la place disponible dans les partitions ou principaux répertoires-système
  • du -s (disk usage) permet de connaître l'utilisation disque du répertoire spécifié ou courant.
  • ls (list) affiche le contenu d'un répertoire (dossier courant si rien n'est spécifié, sinon celui du chemin indiqué)
guy@Athos:~/Examples/logos$ ls
logo-Kubuntu.png  logo-Ubuntu.png
  • ls -l L'option -l permet d'afficher les détails des objets:
    • le type (répertoire, fichier,…) et les droits (1ère colonne)
    • le nom (login) du propiétaire (3ème colonne)
    • le groupe auquel appartient ce fichier/répertoire(4ème colonne)
    • sa taille en octets (5ème colonne)
    • la date et l'heure de dernière modification (6,7 et 8ème colonne)
    • le nom de ce fichier/répertoire (dernière colonne)
guy@Athos:~/Examples/logos$ ls -l
total 80
-rw-r--r-- 1 root root 44355 2008-10-22 09:11 logo-Kubuntu.png
-rw-r--r-- 1 root root 34391 2008-10-22 09:11 logo-Ubuntu.png

ls -a l'option -a permet d'afficher les fichiers commençant par le caractère . (point). Ces fichiers sont dits cachés et sont en général des fichiers de configuration ou des fichiers/répertoires spéciaux comme . (qui désigne le répertoire courant) et .. (qui désigne le répertoire parent).

  • ls -la la combinaison des options offre la combinaison des affichages détails et fichiers cachés.
  • ls -lh affiche la taille des fichiers
  • Maj+PageUp remonte l'affichage d'une page et inversement pour Maj+PageDown
  • clear nettoie l'écran du terminal
  • echo retourne la chaîne de caractères reçue en argument

Se reporter également à la documentation Ubuntu suivante qui présente un ensemble de commandes Linux adaptées à Ubuntu.

Aide à la saisie

Pour se faciliter la tâche en ligne de commande, on dispose de plusieurs astuces à utiliser sans réserve.

Historique des commandes

»Appuyer sur la flèche Haut autant de fois que nécessaire pour remonter dans l'historique des commandes et revenir à une commande utilisée auparavant sans devoir la réécrire. Ensuite, valider par Enter (ou modifier selon besoin).

La commande Ctl+R permet de rechercher une occurence dans l'historique des commandes précédentes.

Complétion

»Au lieu d'écrire un chemin compliqué avec sources d'erreurs multiples, pour chaque commande attendant un argument, saisir les premières lettres et appuyer sur TAB. L'interpréteur complète tout seul (finit de taper le nom). S'il existe plusieurs noms correspondant au début de frappe, le shell envoie un bip pour le signaler en s'arrêtant à la partie commune.

  • Exemple 1:
cat /bo<Tab>                # affichera cat /boot/
cat /boot/g<Tab>            # affichera cat /boot/grub/
cat /boot/grub/me<Tab>      # affichera cat /boot/grub/menu.lst
  • Exemple 2: Aprés s'être placé dans le dossier de téléchargement où est enregistré l'installeur spécifique pour la carte NVIDIA, pour le lancer, entrer simplement:
sudo NV<Tab>                # affichera sudo NVIDIA-Linux-x86-100.14.11-pkg1.run

il ne reste plus ensuite qu'à faire Enter.

  • Exemple 3: L'exemple suivant montre le contenu d'un fichier LINUX,

dans lequel on trouve 3 éléments commençant par Installation-Mise_a_jour (un fichier Word, une version HTML et le dossier adjoint contenant les fichiers annexes). Pour accélérer la saisie, si on entre:

cd In<Tab>                           # on aura: cd Installation-Mise_a_jour

Le shell s'est arrêté à la fin de la partie commune du nom. Pour arriver ensuite au répertoire, il faut ajouter maintenant le tiret bas et refaire Tab:

cd Installation-Mise_a_jour_<Tab>    # pour avoir: cd Installation-Mise_a_jour_fichiers/

Ceci permet également de valider une commande. Si elle nécessite d'être en root alors que ce n'est pas le cas, ou s'il y a une erreur, il n'y a pas de réponse.

Copier-coller Linux

La saisie est souvent source de fautes de frappe ou d'erreurs. Pour les éviter, sélectionner à la souris la partie de texte à recopier, appuyer sur la molette de la souris pour recopier ce texte au point d'insertion actuel du shell.

Cette facilité peut aussi bien s'utiliser avec toute sélection faite sur n'importe quel fichier étranger à la console.

En Linux, plus besoin de Copier-Coller Windows (Ctl+C Ctl+V) ni Mac (même pas Pomme+C Pomme+V), sélectionner l'objet, se placer à l'endroit et cliquer la molette centrale de la souris (ou simultanément les deux molettes sur un portable). Ceci est valable pour tout Linux, en mode graphique comme dans un terminal.

Alias

  • Un alias est un raccourci dans la console permettant une facilité d'utilisation de certaines commandes longues à taper comme “ping -c 4”. Il suffira de taper “ping” par exemple.
  • La commande alias affiche les raccourcis (“alias”) existants.
  • Ces alias sont enregistrés dans le fichier /home/<login>/.bashrc si on utilise bash, le shell par défaut (Si on est en shell zsh, éditer le fichier .zshrc). Pour en ajouter d'autres, éditer le fichier et ajouter à la fin ceux que l'on veut créer. Exemples:
alias ll='ls -l'
alias la='ls -la'
alias ls='ls --color=auto'    # pour avoir une coloration du texte plus facile à interpréter (répertoires/fichiers)

alias cp='cp -i'              # pour copie en mode interactif
alias rm='rm -i'              # pour suppression en mode interactif
alias ping='ping -c 4'        # pour limiter à 4 le nombre de pings à envoyer
alias ntpdate='sudo ntpdate ntp.ubuntu.com'  # pour mettre l'horloge à l'heure
  • Pour faire ressortir l'invite, on décommente (=supprime le dièse en début de ligne) la ligne suivante
force_color_prompt=yes 

Voir la copie d'écran ci-dessus.

  • Les changements deviennent actifs au prochain démarrage d'un terminal ou aprés avoir entré la commande:
source /home/<login>/.bashrc  # remplacer par .zshrc si bash en ZSH

ou simplement

source .bashrc   # si on est déjà dans /home/login (l'invite se terminant par ~$)

ou encore

. .bashrc   # si on est déjà dans /home/login

Antislash

Le caractère \ devant un alias, lance l'alias sans les options définies pour l'alias. Exemple:

\ping free.fr

Suppression

Provisoire
unalias <commande>
Définitive

Supprimer l'alias dans .bash-aliases et/ou dans .bashrc.

Caractères de remplacement

Ils permettent de définir de façon abrégée des ensemles de fichiers possédant des noms similaires avec un “joker”. Voici les principaux caractères utilisés:

Globbing Correspondance
* équivaut à zéro ou plusieurs caractères quelconques
? correspond à un seul caractère, n'importe lequel
[a-d] permet de spécifier un caractère se trouvant dans l'ensemble spécifié
[a-v] correspond à tous les caractères, sauf w, x, y et z
{a,b,c} distributivité de la commande sur tous les éléments entre accolades

Exemples:

ls a*              # la liste développée équivaut à <ls aardvark adamantium apple>
ls *.log           # la liste donne tous les fichiers .log du répertoire courant
ls dossier{1,12}   # exécute <ls> sur <dossier1> et sur <dossier12>

Pour effacer “rapport_oct_b2” et “rapport_oct_b3”, mais pas “rapport_nov2”, on utilisera la commande rm (remove) en écrivant:

rm *oct?b?

Pour effacer “rapport_oct_b1” et “rapport_oct_b2” mais pas “rapport_oct_b3”, on écrira

rm *oct_b[1-2]

Aides à la syntaxe

  • Commande man

Si on a besoin d'informations sur une commande, utiliser la commande man qui affiche page par page le manuel en ligne du programme.

Pour obtenir la documentation sur l'affichage d'une liste de fichiers avec ls, taper:

man ls   # sortie de man par la touche q
  • Commande info

C'est un système d'aide hypertexte étendu qui couvre de nombreux programmes:

info ls 

Pour apprendre à naviguer dans info:

info info
  • Option –help

Nombre de programmes répondent à cette option en affichant un message d'aide synthétique.

ls --help
  • Commande whatis

Donne une explication succinte de la commande.

Aides générales - Documentation

  • Répertoire /usr/share/doc

Ce répertoire contient des documents d'aide pour de nombreux programmes.

  • Site Web Ubuntu

- Documentation officielle. Se reporter sur le site Ubuntu en français http://doc.ubuntu-fr.org/. On y trouve réponse à beaucoup de questions intéressantes.

- Guide non officiel sur lelien suivant

  • Commande man. Man affiche une page de manuel en ligne (manpage) correspondant à un programme. Ces pages sont en anglais. Exemple pour ls qui affiche une liste defichiers:
man ls
Pour avoir cette documentation man en français, passer par l'adresse http://jp.barralis.com/linux-man/
commandes_linux.txt · Last modified: 2020/10/08 12:26 by guy