|
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»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 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, poweroff
sudo reboot # ou bien init 6 Fenêtres
Ceci est valable sur toute fenêtre Ubuntu (terminal ou toute application). Raccourcis-clavierUn certain nombre de raccourcis-clavier sont à retenir pour usage quotidien:
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. cp -r dossier dossier-bis 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 double-pipe ||, la double barre verticale, symbôle du “OU” logique: commande1 || commande2 || commande3 Premières commandes
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)
Et ensuite par ligne:
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)
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: ....
La commande hostname permet également d’attribuer son nom d’hôte au système: root@U9:~# hostname Elastix root@U9:~# hostname Elastix Le nouveau nom apparaitra dans le terminal au prochain démarrage.
Le nom de l’ordinateur est à la fois dans /etc/hotname et dans /etc/hosts, il faut donc éditer également /etc/hosts pour changer le nom de l’ordinateur
guy@Remix9-10~ >date 22:59 #1023 lundi 1 février 2010, 23:02:46 (UTC+0100)
sudo date 061412302010
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
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
~$ df -kTh Sys. de fich. Type Taille Uti. Disp. Uti% Monté sur /dev/sda4 ext3 9,7G 4,8G 4,5G 52% / none devtmpfs 2,0G 300K 2,0G 1% /dev none tmpfs 2,0G 300K 2,0G 1% /dev/shm none tmpfs 2,0G 384K 2,0G 1% /var/run none tmpfs 2,0G 0 2,0G 0% /var/lock /dev/sdb1 fuseblk 342G 199G 143G 59% /media/DONNEES350 /dev/sda5 ext3 11G 2,8G 7,1G 28% /media/10.04 /dev/sda6 ext3 167G 129G 30G 82% /media/home10.04 /dev/sda7 ext4 13G 3,0G 8,6G 26% /media/11.04 /dev/sdb5 ext4 312G 68G 229G 23% /home /dev/sdb6 ext4 269G 6,1G 249G 3% /media/h11.04
~$ sudo du -sh /home/ # l'option h (human readble) donne le résultat en plus clair (par exemple: 1K 234M 2G) [sudo] password for guy: # sudo pour avoir les droits d'entrer dans tous les répertoires 161G /home/
guy@Athos:~/Examples/logos$ ls logo-Kubuntu.png logo-Ubuntu.png
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
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.
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. Recherche de commandeEntrer les deux premières lettres de la commande recherchée et cliquer deux fois sur Tabulation. La liste des commandes commençant par ce champ s’affiche, il reste à compléter la saisie : proxmox:~# gr grep groupdel grub grub-reboot groff groupmod grub-floppy grub-set-default grog groups grub-install grub-terminfo grops grpck grub-md5-crypt grotty grpconv grub-mkdevicemap groupadd grpunconv grub-probe proxmox:~# gr 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, se déplacer jusqu’à la destination et appuyer sur la molette de la souris pour recopier la sélection à l’endroit voulu. Exemple: Pour installer un fichier install_v10.85.3.3.tar.bz2, il faut d’abord le décomprimer. Ici,
Cette facilité peut aussi bien s’utiliser avec toute sélection faite sur n’importe quel fichier étranger à la console.
Quand on en a pris l’habitude, c’est difficile de s’en passer. On peut même cliquer n’importe où dans la fenêtre du terminal, le coller se place où est le curseur de saisie. Alias
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 grep='grep -i --color=auto' # pour recherche motif avec ou sans Majuscule 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
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 ~$)
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] sudo 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 # sortie de man par la touche q
Pour avoir le man en français:
sudo apt-get install manpages-fr
sudo -i dpkg-reconfigure locales
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 succincte de la commande. Historique des commandes
~$ history | more
1 man apt
2 apt-cache search vlc
3 sudo apt-get install vlc-plugin-pulse
4 sudo halt
5 sudo apt-get install numlockx vlc acroread
6 sudo apt-get install numlockx vlc
7 sudo apt-get install ubuntu-restricted-extras vlc-plugins-pulse
On peut ensuite accéder à l’une d’elles avec la commande ”! + n” sans espace (N° historique). ~$ !2 apt-cache search vlc dvd95 - Convertisseur DVD9 à DVD5 dvblast - Simple and powerful dvb-streaming application getstream - DVB streaming application gnome-media-player - A simple media player for GNOME hdhomerun-config - Configuration utility for Silicon Dust HD HomeRun ...
(reverse-i-search)`sudo': sudo sfdisk -d /dev/sdc > partition_bak-sdc En cas d’échec, quitter par CTL+C. 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/
|