Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
tutoriel:learn_unix_in_10_minutes [Le 02/03/2009, 21:47] strider |
tutoriel:learn_unix_in_10_minutes [Le 11/09/2022, 12:19] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>console}} | + | {{tag>console À_RECYCLER tutoriel}} |
---- | ---- | ||
- | ====== Learn UNIX in 10 minutes. Version 1.2 FR 1.0 ====== | + | ====== 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\\ | Les commandes de base de la ligne de commande UNIX (le shell) : dernière révision 17 Mai 2001\\ | ||
Ligne 17: | Ligne 17: | ||
Ce document est copyrighté mais peut être reproduit selon les termes de la [[http://www.gnu.org/copyleft/fdl.html|GFDL]]. | Ce document est copyrighté mais peut être reproduit selon les termes de la [[http://www.gnu.org/copyleft/fdl.html|GFDL]]. | ||
- | Envoyez-moi vos commentaires, corrections ou tout autre ajout qui vous semble absolument nécessaire dans ce document.((This is something that I had given out to students (CAD user training) in years past. | + | Envoyez-moi vos commentaires, corrections ou tout autre ajout qui vous semble absolument nécessaire dans ce document.((This is something that I had given out to students (CAD user training) in years past. |
- | The purpose was to have on one page the basics commands for getting started using | + | 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 | + | the UNIX shell (so that they didn't call me asking what to do the first time someone |
gave them a tape). \\ | gave them a tape). \\ | ||
- | This document is copyrighted but freely redistributable under the terms of the GFDL . | + | This document is copyrighted but freely redistributable under the terms of the GFDL . |
- | Send me comments, corrections, and extra stuff that you think should absolutly must be | + | Send me comments, corrections, and extra stuff that you think should absolutly must be |
included. I'll gladly listen.\\ | included. I'll gladly listen.\\ | ||
[[http://www.faqs.org/docs/linux_intro/gfdl-8.html|Invariant translations]])) | [[http://www.faqs.org/docs/linux_intro/gfdl-8.html|Invariant translations]])) | ||
Ligne 45: | Ligne 45: | ||
|/usr | Dossier usr (sous-dossier du dossier "racine") | | |/usr | Dossier usr (sous-dossier du dossier "racine") | | ||
|/usr/STRIM100 | STRIM100 est un sous-dossier de /usr | | |/usr/STRIM100 | STRIM100 est un sous-dossier de /usr | | ||
- | |||
- | |||
- | |||
==== Se déplacer dans le système de fichier ==== | ==== Se déplacer dans le système de fichier ==== | ||
- | | pwd | montre le nom du dossier de travail courant (//Present Working Directory//) | | + | | pwd | montre le nom du dossier de travail courant (//Print Working Directory//) | |
| cd | change le dossier de travail pour un autre dossier | | | cd | change le dossier de travail pour un autre dossier | | ||
| cd /usr/STRIM100 | change le dossier de travail pour /usr/STRIM100 | | | cd /usr/STRIM100 | change le dossier de travail pour /usr/STRIM100 | | ||
Ligne 57: | Ligne 54: | ||
| cd .. | change le dossier de travail pour le dossier parent | | | 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'environnement 'STRMWORK'| | | cd $STRMWORK | change le dossier de travail pour le dossier défini par la variable d'environnement 'STRMWORK'| | ||
+ | | cd - | revient au dossier précédent (annule le dernier changement de dossier) | | ||
==== Lister le contenu d'un dossier ==== | ==== Lister le contenu d'un dossier ==== | ||
Ligne 65: | Ligne 62: | ||
''ls -l //dossier//'' liste au format détaillé le dossier //dossier// | ''ls -l //dossier//'' liste au format détaillé le dossier //dossier// | ||
- | Par exemple : | + | Par exemple : |
- | $ ls -l /home/sheherazade/work/ | + | $ ls -l /home/marven/work/ |
- | drwxr-xr-x 4 sheherazade staff 1024 2004-04-04 09:40 ToDo | + | drwxr-xr-x 4 marven staff 1024 2004-04-04 09:40 ToDo |
- | -rw-r--r-- 1 sheherazade staff 767392 2004-04-04 14:28 scanlib.tar.gz | + | -rw-r--r-- 1 marven staff 767392 2004-04-04 14:28 scanlib.tar.gz |
- | ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ | + | ^^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ |
- | | | | | | | | | | | | | + | || | | | | | | | | | | |
- | | | | | | Propriétaire Groupe Taille Date Heure Nom | + | || | | | | Propriétaire Groupe Taille Date Heure Nom |
- | | | | | Nombre de fichiers ou dossiers que le dossier listé contient | + | || | | | Nombre de fichiers ou dossiers que le dossier listé contient |
- | | | | Permissions pour tous | + | || | | Permissions pour tous |
- | | | Permissions pour les membres du groupe staff | + | || | Permissions pour les membres du groupe staff |
- | |Permissions pour le propriétaire r = lecture (read), w = écriture (write), x = exécute (execute), - = pas de droits | + | ||Permissions pour le propriétaire r = lecture (read), w = écriture (write), x = exécute (execute), |
+ | | - = pas de droits | ||
Type de fichier * : - = Fichier régulier, d = Dossier, l = Lien symbolique ou autre... | Type de fichier * : - = Fichier régulier, d = Dossier, l = Lien symbolique ou autre... | ||
- | * [[http://linux.ensimag.fr/fichiersunix.html|Sous Unix tout est fichier]] | ||
Ligne 113: | Ligne 110: | ||
- | Il faut savoir que x=1, w=2 et r=4 ensuite vous additionnez les chiffres si vous voulez cumuler les droits. L'ordre des chiffres est propriétaire/groupe/autres. | + | Il faut savoir que x=1, w=2 et r=4 ensuite vous additionnez les chiffres si vous voulez cumuler les droits. L'ordre des chiffres est propriétaire/groupe/autres. |
Par exemple pour accorder la lecture, l'écriture et l'exécution pour le propriétaire et la lecture et l'exécution pour le groupe et les autres. | Par exemple pour accorder la lecture, l'écriture et l'exécution pour le propriétaire et la lecture et l'exécution pour le groupe et les autres. | ||
Ligne 122: | Ligne 119: | ||
On a propriétaire/groupe/autres donc rwx/rx/rx donc 4+2+1/4+1/4+1 et donc 7/5/5. | On a propriétaire/groupe/autres donc rwx/rx/rx donc 4+2+1/4+1/4+1 et donc 7/5/5. | ||
- | Astuce pour ceux qui connaissent le binaire. On veut rwx lire/écrire/exécuter donc 111 en binaire qui vaut 7 en décimal. On veut r-x lire/**pas ecrire**/exécuter donc 101 en binaire qui vaut 5 en décimal. | + | Astuce pour ceux qui connaissent le binaire. On veut rwx lire/écrire/exécuter donc 111 en binaire qui vaut 7 en décimal. On veut r-x lire/**pas ecrire**/exécuter donc 101 en binaire qui vaut 5 en décimal. |
=== chgrp === | === chgrp === | ||
Ligne 162: | Ligne 159: | ||
| vi fichier | éditer un fichier avec l'éditeur vi. Tous les systèmes Unix ont un éditeur //à la// vi. | | | vi fichier | éditer un fichier avec l'éditeur vi. Tous les systèmes Unix ont un éditeur //à la// vi. | | ||
| emacs fichier | éditer un fichier avec l'éditeur emacs. Pas disponible sur tous les systèmes. | | | emacs fichier | éditer un fichier avec l'éditeur emacs. Pas disponible sur tous les systèmes. | | ||
- | | head fichier | affiche les premières lignes d'un fichier | | + | | head fichier | affiche par défaut les 10 premières lignes d'un fichier | |
| head -n{N} fichier | affiche les N premières lignes d'un fichier | | | head -n{N} fichier | affiche les N premières lignes d'un fichier | | ||
- | | tail fichier | affiche les dernières lignes d'un fichier | | + | | tail fichier | affiche par défaut les 10 dernières lignes d'un fichier | |
| tail -n{N} fichier | affiche les N dernières lignes d'un fichier | | | tail -n{N} fichier | affiche les N dernières lignes d'un fichier | | ||
Ligne 223: | Ligne 220: | ||
Une des fonctionnalités de bash et tcsh (et probablement d'autres) est de pouvoir utiliser la touche TAB pour compléter un nom de fichier tapé partiellement. Par exemple, si vous avez un fichier nommé constantine-monks-and-willy-wonka.txt dans votre répertoire et si vous voulez l'éditer, vous pouvez taper 'vi const', enfoncer la touche TAB, et le shell va remplir le reste du nom pour vous (à condition qu'il soit unique). | Une des fonctionnalités de bash et tcsh (et probablement d'autres) est de pouvoir utiliser la touche TAB pour compléter un nom de fichier tapé partiellement. Par exemple, si vous avez un fichier nommé constantine-monks-and-willy-wonka.txt dans votre répertoire et si vous voulez l'éditer, vous pouvez taper 'vi const', enfoncer la touche TAB, et le shell va remplir le reste du nom pour vous (à condition qu'il soit unique). | ||
+ | Dans ksh (kornshell), cette complétion se fait en appuyant 2 fois sur la touche Echap. | ||
==== Bash vous montre la voie ==== | ==== Bash vous montre la voie ==== | ||
Ligne 270: | Ligne 268: | ||
va afficher à l'ecran (voir cat) le contenu de tous les fichiers nommés aaa.txt dans le dossier de travail courant ou ses sous-dossiers. | va afficher à l'ecran (voir cat) le contenu de tous les fichiers nommés aaa.txt dans le dossier de travail courant ou ses sous-dossiers. | ||
+ | <note>Cette syntaxe est dépassée, on lui préfère maintenant la notation $( expression ) </note> | ||
+ | cat $(find . -name aaa.txt) | ||
=== Rechercher une chaîne de caractères : La commande grep === | === Rechercher une chaîne de caractères : La commande grep === | ||
Ligne 295: | Ligne 294: | ||
find /usr/local/games -name "*xpilot*" | find /usr/local/games -name "*xpilot*" | ||
- | cherche tous les fichiers dont le nom contient //xpilot// dans le dossier /usr/local/games | + | cherche tous les fichiers dont le nom contient //xpilot// dans le dossier /usr/local/games |
- | ==== Créer des archives : La commande tar ==== | + | ==== Créer des archives ('grappe de fichier') : La commande tar ==== |
- | La commande tar signifie '**t**ape **ar**chive' (archive sur bande). C'est la méthode 'standard' pour lire et écrire des archives. | + | La commande tar signifie '**t**ape **ar**chive' (archive sur bande). C'est la méthode 'standard' pour lire et écrire des archives. Le sens commun d'archives papier est ici dépassé et élargi : il s'agit simplement de regrouper plusieurs fichiers dans un 'pack' en un seul nouveau fichier, pour des raisons pratiques de transfert (une seule pièce jointe dans un email par exemple), de stockage (par thème, par année,...) ou de dépendances (installation d'une application, d'un système d'exploitation,...) par exemple. Il faut noter que les fichiers ainsi rassemblés restent 'indépendants' et ne se mélangent pas comme on pourrait le faire en fusionnant les données (avec un traitement de texte par exemple). |
Ligne 430: | Ligne 429: | ||
Ces caractères, tout comme les autres caractères spéciaux, peuvent être 'échappés' à l'aide du \ : | Ces caractères, tout comme les autres caractères spéciaux, peuvent être 'échappés' à l'aide du \ : | ||
- | c'est-à-dire pour capturer la chaîne de caractères "/usr/STRIM100/SOFT", il faut utiliser l'expression régulière "\/usr\/STRIM100\/SOFT" | + | c'est-à-dire pour capturer la chaîne de caractères "/usr/STRIM100/SOFT", il faut utiliser l'expression régulière "\/usr\/STRIM100\/SOFT" |
Ligne 481: | Ligne 480: | ||
Copyright (c) 2000,2001 C R Johnson | Copyright (c) 2000,2001 C R Johnson | ||
- | 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://www.gnu.org/licenses/fdl.html|GFDL]]. | + | 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 quatrième de couverture. Consultez la GNU Free Documentation License : [[http://www.gnu.org/licenses/fdl.html|GFDL]]. |