Ci-dessous, les différences entre deux révisions de la page.
— |
admin:linux [2011/02/02 22:42] (Version actuelle) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Learn UNIX in 10 minutes. Version 1.2 FR 1.0 ====== | ||
+ | Les commandes de base de la ligne de commande UNIX (le shell) : dernière révision 17 Mai 2001\\ | ||
+ | Site Original : [[http:// | ||
+ | |||
+ | ===== Avant Propos ===== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Ce document a été rédigé il y a quelques années pour des étudiants en Dessin Assisté par Ordinateur (DAO) . | ||
+ | Le but était d' | ||
+ | |||
+ | Ce document est copyrighté mais peut être reproduit selon les termes de la [[http:// | ||
+ | Envoyez-moi vos commentaires, | ||
+ | The purpose was to have on one page the basics commands for getting started using | ||
+ | the UNIX shell (so that they didn't call me asking what to do the first time someone | ||
+ | gave them a tape). \\ | ||
+ | This document is copyrighted but freely redistributable under the terms of the GFDL . | ||
+ | Send me comments, corrections, | ||
+ | included. I'll gladly listen.\\ | ||
+ | [[http:// | ||
+ | |||
+ | |||
+ | |||
+ | ===== Sections ===== | ||
+ | |||
+ | ==== Chemins ==== | ||
+ | |||
+ | |||
+ | Les chemins de fichiers et de dossiers sous Unix utilisent le slash "/" | ||
+ | |||
+ | |||
+ | Exemples : | ||
+ | |||
+ | | / | | ||
+ | |/usr | Dossier usr (sous-dossier du dossier " | ||
+ | |/ | ||
+ | |||
+ | ==== Se déplacer dans le système de fichier ==== | ||
+ | |||
+ | |||
+ | | pwd | montre le nom du dossier de travail courant (//Present Working Directory// | ||
+ | | cd | change le dossier de travail pour le dossier HOME | | ||
+ | | cd / | ||
+ | | cd INIT | change le dossier de travail pour INIT, qui est un sous-dossier du dossier courant | ||
+ | | cd .. | change le dossier de travail pour le dossier parent | | ||
+ | | cd $STRMWORK | change le dossier de travail pour le dossier défini par la variable d' | ||
+ | |||
+ | ==== Lister le contenu d'un dossier ==== | ||
+ | |||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | Par exemple : | ||
+ | |||
+ | $ ls -l / | ||
+ | | ||
+ | | ||
+ | ^ ^ ^ ^ | ||
+ | | | | | | ||
+ | | | | | | ||
+ | | | | | Nombre de fichiers ou dossiers que le dossier listé contient | ||
+ | | | | Permissions pour tous | ||
+ | | | Permissions pour les membres du groupe staff | ||
+ | | ||
+ | Type de fichier * : - = Fichier régulier, d = Dossier, l = Lien symbolique ou autre... | ||
+ | |||
+ | * [[http:// | ||
+ | |||
+ | ==== Modifier les permissions et les droits ==== | ||
+ | |||
+ | |||
+ | |||
+ | chmod 755 file | ||
+ | |||
+ | change les droits de //file// afin qu'ils deviennent rwx pour le propriétaire, | ||
+ | |||
+ | chgrp staff fichier | ||
+ | |||
+ | change le fichier //fichier// afin qu'il appartienne au groupe //staff//. | ||
+ | |||
+ | chown sheherazade fichier | ||
+ | |||
+ | fait de sheherazade la propriétaire du fichier | ||
+ | |||
+ | chown -R sheherazade dir | ||
+ | |||
+ | fait de sheherazade la propriétaire du dossier //dir// et de **tous** ses sous dossiers. | ||
+ | |||
+ | Vous devez être le/la propriétaire du fichier/ | ||
+ | |||
+ | ==== Déplacer, renommer et copier des fichiers ==== | ||
+ | |||
+ | |cp fichier_source fichier_destination | copie un fichier | | ||
+ | |cp -r dossier_source dossier_destination | copie un dossier | | ||
+ | | mv fichier1 nouveau_nom_fichier1 | déplace ou renomme un fichier | | ||
+ | | rm fichier1 [fichier2 ...] | supprime un fichier (ou une liste de fichiers) (( **Il n'y a pas de corbeille**)) | | ||
+ | | rm -r dossier1 [dossier2...] | supprime un dossier et **tous** ses sous-dossiers, | ||
+ | | mkdir dossier1 [dossier2...] | ||
+ | |rmdir dossier1 [dossier2...] | supprime un dossier vide| | ||
+ | |||
+ | ==== Visualiser et éditer les fichiers ==== | ||
+ | |||
+ | |||
+ | |||
+ | | cat fichier | affiche le contenu du fichier à l' | ||
+ | | more fichier | affiche progressivement un fichier à l' | ||
+ | | less fichier | comme more, mais on peut utiliser la touche Page Précédente. Pas disponible sur tous les systèmes. | | ||
+ | | vi fichier | éditer un fichier avec l' | ||
+ | | emacs fichier | éditer un fichier avec l' | ||
+ | | head fichier | affiche les premières lignes d'un fichier | | ||
+ | | head -n fichier | affiche les n premières lignes d'un fichier | | ||
+ | | tail fichier | affiche les dernières lignes d'un fichier | | ||
+ | | tail -n fichier | affiche les n dernières lignes d'un fichier | | ||
+ | |||
+ | ==== Shells ==== | ||
+ | |||
+ | |||
+ | Le comportement de l' | ||
+ | |||
+ | Suivant le shell utilisé, quelques comportements peuvent être pratiques. | ||
+ | |||
+ | Vous pouvez connaître le shell que vous utilisez avec la commande : | ||
+ | |||
+ | |||
+ | printenv SHELL | ||
+ | |||
+ | Vous pouvez bien évidemment créer un fichier contenant une liste de commandes shell et l' | ||
+ | |||
+ | ==== Variables d' | ||
+ | |||
+ | |||
+ | |||
+ | Vous pouvez apprendre au shell à ' | ||
+ | Par exemple avec bash : | ||
+ | |||
+ | export CASROOT=/ | ||
+ | |||
+ | définit la variable CASROOT avec la valeur / | ||
+ | |||
+ | cd $CASROOT | ||
+ | |||
+ | change le répertoire de travail courant pour CASROOT. | ||
+ | |||
+ | export LD_LIBRARY_PATH=$CASROOT/ | ||
+ | |||
+ | définit la variable LD_LIBRARY_PATH qui prendra la valeur CASROOT avec /Linux/lib ajouté à la fin, c' | ||
+ | |||
+ | printenv | ||
+ | |||
+ | affiche toutes les variables d' | ||
+ | |||
+ | printenv CASROOT | ||
+ | |||
+ | affiche la valeur de la variable d' | ||
+ | |||
+ | echo $CASROOT | ||
+ | |||
+ | fait exactement la même chose. | ||
+ | |||
+ | ==== Historique Interactif ==== | ||
+ | |||
+ | |||
+ | Une fonctionnalité de bash et tcsh (et parfois d' | ||
+ | |||
+ | ==== Complétion des noms de fichiers ==== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Une des fonctionnalités de bash et tcsh (et probablement d' | ||
+ | |||
+ | ==== Bash vous montre la voie ==== | ||
+ | |||
+ | |||
+ | Bash complète aussi bien les noms de commandes que les variables d' | ||
+ | En cas de possibilités multiples de complétion, | ||
+ | |||
+ | ==== Redirection ==== | ||
+ | |||
+ | grep chaine fichier > nouveau_fichier | ||
+ | redirige la sortie de la commande précédente ' | ||
+ | |||
+ | grep chaine fichier >> fichier_existant | ||
+ | ajoute la sortie de la commande ' | ||
+ | |||
+ | Les opérateurs de redirection > et >> peuvent être utilisés sur la sortie de la plupart des commandes, pour les placer dans un fichier. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Pipes ==== | ||
+ | |||
+ | Le symbole tube (" | ||
+ | |||
+ | Par exemple : | ||
+ | |||
+ | ls -l | more | ||
+ | |||
+ | Cette commande prend la sortie du listage au format long des fichiers dans un répertoire produit par "ls -l" et la redirige vers la commande " | ||
+ | |||
+ | ==== Substitution de Commande ==== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Vous pouvez utiliser le résultat d'une commande comme paramètre d' | ||
+ | Une substitution de commande a lieu lorsque vous encadrez une commande avec des apostrophes inversées. | ||
+ | Par exemple : | ||
+ | |||
+ | cat `find . -name aaa.txt` | ||
+ | |||
+ | va afficher à l' | ||
+ | |||
+ | |||
+ | === Rechercher une chaîne de caractères : La commande grep === | ||
+ | |||
+ | grep chaine fichier | ||
+ | |||
+ | affiche toutes les lignes de //fichier// contenant //chaine// | ||
+ | |||
+ | |||
+ | === Rechercher des fichiers : La commande find === | ||
+ | |||
+ | Syntaxe : | ||
+ | find chemin -name fichier | ||
+ | |||
+ | |||
+ | find . -name aaa.txt | ||
+ | |||
+ | cherche les fichiers nommés aaa.txt dans le dossier courant ou ses sous-dossiers. | ||
+ | |||
+ | find / -name vimrc | ||
+ | |||
+ | cherche les fichiers nommés vimrc depuis le dossier racine | ||
+ | |||
+ | find / | ||
+ | |||
+ | cherche tous les fichiers dont le nom contient //xpilot// dans le dossier / | ||
+ | |||
+ | ==== Créer des archives : La commande tar ==== | ||
+ | |||
+ | |||
+ | La commande tar signifie ' | ||
+ | |||
+ | |||
+ | Vous trouverez souvent des archives de fichiers avec des noms comme fichiers.tar, | ||
+ | |||
+ | Il est très probable, si quelqu' | ||
+ | |||
+ | De même, si vous devez envoyer des fichiers, vous devriez utiliser tar. | ||
+ | |||
+ | |||
+ | |||
+ | | tar xvf archive.tar | ||
+ | | tar xvfz archive.tar.gz | ||
+ | | tar jxvf archive.tar.bz2 | ||
+ | | tar cvf archive.tar fichier1 [fichier2...] | ||
+ | | tar cvfz archive.tar.gz mon_dossier | crée un fichier gzip contenant tout le contenu du dossier ' | ||
+ | |||
+ | |||
+ | ==== Compression de fichier : gzip, bzip2 ==== | ||
+ | |||
+ | == gzip == | ||
+ | |||
+ | gzip est un outil GNU de compression et de decompression. L' | ||
+ | |||
+ | | gzip fichier.txt | crée le fichier compressé fichier.txt.gz | | ||
+ | | gunzip fichier.txt.gz | extrait le fichier fichier.txt | | ||
+ | |||
+ | |||
+ | == bzip2 == | ||
+ | |||
+ | L' | ||
+ | |||
+ | | bzip2 fichier.txt | crée le fichier fichier.txt.bz2 | | ||
+ | | bunzip2 fichier.txt.bz2 | décompresse le fichier fichier.txt.bz2. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Besoin d'aide : La commande man === | ||
+ | |||
+ | La plupart des commandes ont une page de manuel qui donne une description de leurs utilisations plus ou moins détaillées, | ||
+ | |||
+ | Exemple: | ||
+ | man ls | ||
+ | affiche la page de manuel pour la commande ls | ||
+ | |||
+ | Pour obtenir des man pages en français : | ||
+ | sudo apt-get install manpages-fr | ||
+ | |||
+ | ==== Commandes de base de l' | ||
+ | |||
+ | == Ouvrir un fichier == | ||
+ | |||
+ | vi nom_du_fichier | ||
+ | |||
+ | == Mode édition == | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | ''< | ||
+ | |||
+ | == Effacer du texte == | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | ''// | ||
+ | |||
+ | '' | ||
+ | |||
+ | == Oups == | ||
+ | |||
+ | '' | ||
+ | |||
+ | == Copier et coller == | ||
+ | |||
+ | '' | ||
+ | |||
+ | ''// | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | '' | ||
+ | |||
+ | == Positionnement du curseur == | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | == Substitution de chaîne de caractères == | ||
+ | |||
+ | '': | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | Ces caractères, | ||
+ | c' | ||
+ | |||
+ | |||
+ | |||
+ | Exemples: | ||
+ | |||
+ | : | ||
+ | |||
+ | Remplace ' | ||
+ | |||
+ | : | ||
+ | |||
+ | Remplace ' | ||
+ | |||
+ | |||
+ | == Sauver, quitter et commandes d' | ||
+ | |||
+ | Ces commandes sont toutes prefixées par les deux points (:) et apparaissent dans le coin inférieur gauche de la fenetre. \\ | ||
+ | Vous ne pouvez pas saisir ces commandes en mode édition. | ||
+ | Appuyer sur < | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | '': | ||
+ | |||
+ | ===== FAQs ===== | ||
+ | |||
+ | |||
+ | |||
+ | Vous trouverez la plupart du temps toutes les réponses à vos questions dans le manuel ou la documentation du programme. | ||
+ | Si toutefois vous ne trouvez pas de réponse, pensez à chercher sur les forums ou les groupes de discussion **avant** de poser votre question. | ||
+ | |||
+ | ===== Copyrights ===== | ||
+ | |||
+ | Le document original a été rédigé à l'aide de Vim. Vim est la meilleure version du seul véritable éditeur de texte : vi | ||
+ | |||
+ | Copyright (c) 2000, | ||
+ | Permission vous est donnée de copier, distribuer et/ou modifier ces documents selon les termes de la Licence GNU Free Documentation License, Version 1.1 ou ultérieure publiée par la Free Software Foundation ; avec comme la préface section invariante, pas de couverture ni quatréme de couverture. Consultez la GNU Free Documentation License : [[http:// |