|
Table des matières
Commandes Linux - Partie 1On 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:
Remarque préliminaire
Déconnexion-Arrêt ordinateurPour se déconnecter, différentes commandes sont disponibles. Elles doivent être lancées en mode super-utilisateur.
sudo halt # ou bien init 0 ou encore shutdown now
sudo reboot # ou bien init 6 Fenêtres
Ceci est valable sur toute fenêtre Ubuntu (terminal ou toute application). Syntaxe des commandesEn 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. Combinaison de commandesPour 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 commandeswhoami donne le nom de l’utilisateur actuel who liste de personnes actuellement connectées au système 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:~$ 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) 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 cal affiche le calendrier du mois courant ou indiqué (format mm yyyy) bc ouvre des fonctions de calcul simple 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 Quitter par Ctl+D. w (What). Plus complète que who, la commande renvoie, sur la première ligne:
Et ensuite par ligne:
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:~$ 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 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:
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. 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 saisiePour se faciliter la tâche en ligne de commande, on dispose de plusieurs astuces à utiliser sans réserve.
Historique des commandes
La commande Ctl+R permet de rechercher une occurence dans l’historique des commandes précédentes. Complétion
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
sudo NV<Tab> # affichera sudo NVIDIA-Linux-x86-100.14.11-pkg1.run il ne reste plus ensuite qu’à faire Enter.
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 LinuxLa 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.
AliasLa 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 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 Ces nouveaux alias deviennent actifs au prochain démarrage d’un terminal ou aprés avoir entré source /home/<login>/.bashrc Caractères de remplacementIls 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:
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
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
C’est un système d’aide hypertexte étendu qui couvre de nombreux programmes: info ls Pour apprendre à naviguer dans info: info info
Nombre de programmes répondent à cette option en affichant un message d’aide synthétique. ls --help
Donne une explication succinte de la commande. Aides générales - Documentation
Ce répertoire contient des documents d’aide pour de nombreux programmes.
- 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
man ls Pour avoir cette documentation man en français, passer par l’adresse http://jp.barralis.com/linux-man/
|