IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ LinuxConsultez toutes les FAQ

Nombre d'auteurs : 45, nombre de questions : 192, dernière mise à jour : 11 mai 2012 

 
OuvrirSommaireLe ShellLes commandes de bases

Pour exécuter un programme, il faut dans un premier temps que celui-ci possède le format adéquat (elf) et puisse être exécuté sur son architecture (i386, mips, sparc, etc). Vous pouvez vérifier cela avec la commande file :

 
Sélectionnez
$ file nom_du_programme

Ensuite il faut que le fichier possède les droits en exécution pour vous.

 
Sélectionnez
$ chmod +x programme

Il ne vous reste plus qu'à l'exécuter en spécifiant le chemin absolu du fichier :

 
Sélectionnez
$ /usr/local/bin/xmms

Cela est assez fastidieux. Pour résoudre ce problème, il suffit de rajouter dans la variable PATH de votre shell le chemin de l'exécutable. Pour le shell sh/Bash :

 
Sélectionnez
$ export PATH="${PATH}:/usr/local/bin"

Pour les shells csh, tcsh :

 
Sélectionnez
$ setenv PATH "${PATH}:/usr/local/bin"
Créé le 14 juillet 2004  par nyal

Sans option, la commande export affiche la liste des variables d'environnement -- tandis que, toujours sans option, la commande set, et en moins exhaustive mais fonctionnant avec tous les shells la commande env, affichent la liste des variables locales :

 
Sélectionnez
$ export
(...)
declare -x HOME="/u/moi"
declare -x PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin"
declare -x LOGNAME="moi"
declare -x SHELL="/bin/bash"
declare -x MAIL="/mail/moi/inbox"
declare -x USER="moi"
declare -x HOSTNAME="moi.exemple"
(...)
$ set  # ou env
(...)
HOME=/u/moi
HOSTNAME=moi.exemple
HOSTTYPE=i686
IFS=$' \t\n'
INPUTRC=/etc/inputrc
LD_LIBRARY_PATH=/usr/local/lib
MAIL=/mail/moi/inbox
(...)
Créé le 21 juillet 2004  par armatatuxa

Ouvrez votre éditeur de texte et tapez les différentes commandes que le script exécutera :

 
Sélectionnez
#!/bin/sh
echo "lancement d'un script simple.."
# on lance mozilla
mozilla&

La ligne #!/bin/sh (ou shebang line) est une convention. Cela signifie que l'interpréteur de commande sera le Bourne Shell (sh). Si rien n'est précisé il prendra le shell par défaut de l'utilisateur.
Attention à pas confondre avec une ligne en commentaire (# ceci est un commentaire).
Pour exécuter le script vous devrez au préalable appliquer les permissions nécessaires :

 
Sélectionnez
$ chmod +x nomduscript.sh
$ ./nomduscript.sh
Créé le 21 juillet 2004  par Francois Trazzi
 
Sélectionnez
$ alias ll='ls -l'

Grâce à cet alias, lorsque vous taperez

 
Sélectionnez
$ ll

dans votre terminal, cela exécutera la commande

 
Sélectionnez
$ ls -l

Pour voir la liste des alias activés, vous pouvez taper :

 
Sélectionnez
$ alias
Créé le 21 juillet 2004  par Francois Trazzi

Il existe plusieurs éditeurs de texte en console, mais le plus répandu est sans doute vi. Quelle que soit votre distribution, vous êtes sûr de pouvoir compter sur lui ;)
Utilisation :

 
Sélectionnez
$ vi fichier

Pour modifier le texte, appuyer sur "a" (curseur placé avant la lettre), "i" ou INSERT(curseur placé après). Une fois les modifications faites, appuyer sur ESCAPE, ensuite on donne les commandes à exécuter en tapant ":" (deux points) suivi de la lettre qui correspond à la commande : En résumé, vi est simple et très complet. Noter qu'il existe aussi vim (pour vi improved), avec l'ajout notamment de la coloration syntaxique, et aussi gvim, en mode graphique...

  • :w pour sauver les modification
  • :q pour quitter
  • :wq pour sauver et quitter.

Malheureusement les éditeurs les plus "classiques" et "puristes" sous linux sont aussi les plus complexes à utiliser, et sont fort déroutants pour les débutants. Je vous rassure il existe des éditeurs nettement plus simples comme nano ou pico (fort semblables), qui s'utilisent avec les touches normales et intuitives (flèches du clavier, touches home et end, etc.). En gros l'utilisation de nano est très simple :

 
Sélectionnez
nano monfichier.txt

Ouvre le fichier monfichier.txt pour l'éditer, "nano" tout court va créer un nouveau fichier.

Dans le programme, Ctrl+W (w pour "write") permet de sauver le fichier, et Ctrl+X quitte le programme (en vous demandant s'il faut enregistrer les modifications le cas échéant).

Une autre alternative appréciée de bien des gens est le programme mc (midnight comander), le couteau suisse en mode console de linux, équivalent au norton commander de l'époque héroïque du DOS. Ce programme regroupe donc un gestionnaire de fichier (avec la vue à 2 panneaux classique), un éditeur de texte, des utilitaires de recherches, de copie de fichiers, etc.

Mis à jour le 10 décembre 2005  par zdra, Olivier Van Hoof (ovh)

Pour rajouter la coloration syntaxique

 
Sélectionnez

vi /etc/vim/vimrc

enlever le " devant

 
Sélectionnez

" syntax on

Il est tout de même préférable d'utiliser le fichier ~/.vimrc pour rajouter la coloration syntaxique. En effet le fichier /etc/vim/vimrc impacte tous les utilisateurs.

Mis à jour le 4 décembre 2005  par ggnore, Luc Hermitte

En mode console :
Alt+F1, Alt+F2 etc. où le chiffre représente la console désirée (il y en a 4 disponibles par défaut).

En mode graphique, tapez dans un shell :

 
Sélectionnez
$ xterm &
Créé le 14 juillet 2004  par nyal, Olivier Van Hoof (ovh)

La commande file vous renseigne sur le type et le format d'un fichier :

 
Sélectionnez
$ file code.c
code.c: ASCII C program text
$ file file.png
file.png: PNG image data, 1014 x 704, 16-bit/color RGB, non-interlaced
Créé le 21 juillet 2004  par Francois Trazzi

La commande cat permet d'afficher le contenu d'un ou plusieurs fichiers (à la suite dans le second cas) :

 
Sélectionnez
$ cat fichier1
contenu du fichier1
$ cat fichier2
contenu du fichier2
$ cat fichier3
contenu du fichier3
$ cat fichier1 fichier2 fichier3
contenu du fichier1
contenu du fichier2
contenu du fichier3
Mis à jour le 2 décembre 2005  par Francois Trazzi

Exécutez le programme time avec la commande pour argument :

 
Sélectionnez
$ time commande 
real 0m15.953s 
user 0m14.500s 
sys 0m1.320s

Les trois valeurs sont : Il faut savoir qu'un processus s'exécute dans plusieurs modes : user mode ou kernel mode. Le changement de mode s'effectue lorsque le processus utilise des appels système. Ce sont des fonctions dans les programmes pour accéder à des fonctionnalités du noyau (comme écrire sur un terminal, ouvrir un fichier, etc). C'est ce que représentent les valeurs user et sys.
Vous devez maintenant vous poser la question suivante : l'addition des temps du user mode et du kernel mode ne me donne pas la valeur du temps total d'exécution. Pourquoi ?
C'est très simple : un système d'exploitation ne fait pas tourner en temps réel tous les processus (vous n'avez qu'un processeur). Il doit jongler entre les processus (on nomme cela un scheduler). Mais il fait cela tellement vite que vous avez l'impression que vos processus tournent en parallèle.
Vous avez donc compris que le temps total qui s'est écoulé représente : le temps d'exécution de votre processus + celui des autres processus qui se sont écoulés dans le même temps.

  • real : temps total qui s'est écoulé
  • user : temps du CPU qui s'est écoulé en user mode
  • sys : temps du CPU qui s'est écoulé en kernel mode
Créé le 25 juillet 2004  par nyal

La plupart des gens connaissent les rappels de commandes avec bash en utilisant, simplement,les touches "flèche haut" et "flèche bas".
Mais il existe une serie de rappels moins utilisés, plus ou moins connues :

 
Sélectionnez

!! : relance la derniere commande utilisé 
!32 : relance la commande 32 de l'historique ( history pour lire l'historique ) 
!ls : relance la derniere commande de l'historique qui commence par ls 
!-2 : relance l'avant derniere commande 
!!s:/ls /ls -l/ : relance la derniere commande en modifiant ls par ls -l [/list][/list]
Créé le 1er septembre 2005  par becket

Quand vous avez beaucoup d'utilisateurs sur votre linux, il est interressant de savoir qui est présent et quelle est son activité.
La commande :

 
Sélectionnez

who

vous permet de savoir qui est connecté. Pour savoir s'ils sont actifs (utilisation du clavier), il vous suffit de faire un

 
Sélectionnez

finger nom_du_user 

Le temps "idle" correspond au temps entre la dernière pression du clavier et maintenant.

Créé le 1er septembre 2005  par Sylvain Luce

La commande wall permet de lancer un message en broadcast à toutes les personnes connectées à votre machine via un terminal.
Deux méthodes :
Soit vous écrivez un fichier et lancez :

 
Sélectionnez

wall mon_fichier

Soit vous lancez "wall", tapez votre message et terminez par CTRL+D

Créé le 2 décembre 2005  par Francois Trazzi

Pour faire taire les bips de la console, chaque fois que vous appuyez sur tab, éditer le fichier /etc/inputrc et ajoutez juste la ligne :

 
Sélectionnez

set bell-style none
Créé le 7 décembre 2005  par rigel
  • C-b Recule d'un caractère (idem flèche à gauche)
  • C-f Avance d'un caractère (idem flèche à droite)
  • C-a Va en début de ligne
  • C-e Va en fin de ligne
  • C-p Reprend la commande précédente (idem flèche montante)
  • C-n Reprend la commande suivante (idem flèche descendante)
  • C-d Détruit le caractère
  • C-k Détruit le reste de la ligne
  • C-u efface la ligne

C = touche CTRL

Créé le 1er décembre 2005  par Gnux

Bash ne sait pas travailler avec les nombres réels. Pour faire une opération avec des nombres relatifs, bash suffit

 
Sélectionnez

echo "3*2 = " $[ 3 * 2 ]

Pour toute opération avec des réels, il faut utiliser bc. Exemple : combien fait 5/2 ?

 
Sélectionnez

echo "5/2"|bc -l

bc m'affiche 2.50000000000000000000, comment limiter le nombre de décimales ? Avec

 
Sélectionnez

echo "scale=1;(5/2)"|bc -l

affichera 2.5. 1 est le nombre de chiffres après la virgule.

Créé le 24 février 2008  par Arnaud Feltz
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2013 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.