Pc Informatique
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Pc Informatique

Aide et Partage
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Funko POP! Jumbo One Piece Kaido Dragon Form : ...
Voir le deal

 

 Linux : shell bash

Aller en bas 
AuteurMessage
Sub`
Admin
Sub`


Messages : 449
Date d'inscription : 21/07/2008
Localisation : Sur la planète DuDulle

Linux : shell bash Empty
MessageSujet: Linux : shell bash   Linux : shell bash Icon_minitimeDim 7 Sep - 0:47

Nous allons essayer d'explorer la programme Linux , il fournit l'interface de ligne de commande appelé communément le shell. Il existe un grand nombre tous important de shells sous Linux , et pour celà nous regardons que le shell bash qui est le plus commun. La raison en est fort simple , les dévellopeurs de bash on regroupé toutes les fonctionnalités de tous les shells dans ce programme énorme. Sub`

Le shell de Linux par défault est le bash. Cet environnement de travail est basé sur le shell original d'Unix, le shell bourne connu aussi sous le nom de sh.bash signifiant Bourne Again shell. Ce fameux shell bourne est fourni sur la majorité des distributions Linux. On rencontre le shell pour la première fois à l'ouverture d'une session et à l'invite de commandes. Lorsque l'on y accéde , tout ce que l'on voit est un prompt ( un $ ou un # ) suivi d'un curseur clignotant n'attendant plus qu'une entrée au clavier..

Exemple

Linux : shell bash Shellexempleio5

Syntaxe et structure des commandes du shell bash


Utiliser le shell bash à l'invite de commandes consiste souvent à taper une commande avec ses options et ses paramètres. Par exempe la commande ls -la ~ affichera une longue liste de tous les fichiers de votre répertoire personnel, notamment ceux qui commancent par un point et qui sont en règle générale des fichiers et des répertoires de configuration. Le caractère ~ s'appelle un tilde , c'est un raccourci de bash pour spécifier le répertoire utilisateur par défault. En tapant cette commande on affiche simplement le contenu du répertoire utilisateur.

Une commande peut être composée en trois parties :
--le nom de la commande.
--les options ou paramètres.
--les arguments.

Prenons l'exemple suivant:

-On commence par taper la commande du : elle affiche le contenu du répertoire en cours, ses sous-répertoire et l'espace qu'ils occupent sur le disque dur. Cool mais celà pose un problème , on a bien obtenu une liste d'éléments mais s'agit-il de fichiers ou de messages venant de l'espace...

-Donc il est plus judicieux d'ajouter une option : on tape donc du -h la commande est toujours la même mais l'option h apporte plus de précision. L'option -h indique à la commande du d'être plus explicite dans le résultat de son éxécution. On obtient donc plus de renseignement sur le contenu du répertoire. En effet les noms de répertoire sont suivis par leur taille exprimé en Go, Mo, ou Ko. On souhaite connaitre par exemple la taille totale du répertoir en cours , pour celà l'option -s devient évidente donc on tape du -s.

-Maintenant on est interessé par un répertoire en particulier , par exemple /etc, on veut connaitre sa taille et ses sous-répertoires donc on tape la commande du sh /etc : donc dans cet exemple nous revenons à nos trois parties soit : le nom de la commande du, les options [color]-s et -h[/color] et l'argument /etc.

Vous vous demandez peut être ou trouver toutes les options disponibles pour une commande particulière ? Deux excellentes sources sont mise à disposition: les pages man (on en reparlera plus tard) et la fameuse option -help qui est disponible pour la plupart des commandes , donc taper simplement du -help

Utilisation de caractères de remplacement


Les caractères de remplacement se référent à la capacité d'une commande à être éxécutée avec de nombres fichiers. par exemple l'astérisque * ou ? sont deux caractères de remplacement destinés à remplacer n'importe quel nom ou partie de nom de fichier.
exemple :
On utilise la commande suivante pour afficher en présentant un fichier par ligne la liste des fichiers portant l'extension .doc : donc on tape ls -l *.doc

Linux complète une commande ou un nom de fichier


Vous ne vous souvenez que du début d'une commande, par exemple up, la poisse... Bah non il suffit de rentrer le début de la commande dans le prompt et de taper sur la touche tab...
Voici ce qui se passe:
-- Si une seule commande commence par up, la ligne de commande est complétée et le système attend votre confirmation (touche entrée) pour l'executer.
--Si vous entendez un signal sonore, celà signifie que plus d'une commande commence par up. Si c'est le cas, tapez de nouveau sur la touche tab afin que toutes les commandes qui corresponde soient affichées. Entrez de nouveau up puis t et Tab. La commande uptime est complétée.

On peut completer aussi un nom de fichier : si vous devez rentrer un nom de fichier tapez seulement les premiers caractères et tapez sur Tab. Le shell recherche dans le répertoire en cours les noms de fichiers qui correspondent et complète avec les caractères manquants.

L'historique des commandes


Le shell a une mémoire énorme, il se souvient de tout, il conserve la trace de toute les commandes qui ont été éxécutées . Supposons que vous avez réussi à écrire une commande qui recherche et supprime sur le système tous les fichiers core. Une commande de ce type doit ressembler à cela find / -name core -exe rm [} \ ;. Si vous voulez reitérer cette commande il suffit de la rechercher dans la liste de l'historique et de l'executer.
Suffit de se servir des flèches directionnelles de trouver la commande puis Entrée.
Pour trouver l'historique des commandes 2 méthodes existent :
--Activation de la touche directionnelle Flèche vers le haut : c'est la plus simple . A chaque fois que vous appuyez sur cette touche, les commandes défilent. Choisir donc la commande puis touche Entrée.
--Entrez la commande history : la liste des 20 dernières commandes est affichée.

Les alias de commande


bash met à votre disposition les alias pour créer des raccourcis pour des commandes très longue qui sont utilisé fréquement pour ce faire, chaque distribution à des alias par défault .
Pour créer un alias il suffit de taper par exemple alias dir='ls -l" en tapant alors la commande dir vous aurez une liste detaillée du contenu de votre répertoire. Attention toute fois à la fin de la session ou si on redémarre une nouvelle instance de shell, les alias que vous aurez crées ne seront plus disponible. J'expliquerais plus loin comment les conserver etc..

Les variables


Les variables sont des mots ou des chaines de texte qui représentent un groupe de données. Elles contiennent des informations sur votre compte et vos paramètres d'environnement. Le shell bash dispose d'un ensemble spécifique de variables et à une manière spécifique de les utiliser et des les affecter.

Variables et variables d'environnement:
Il existe deux classes de variables :
Les variables, elle est utilisée dans un programme ou dans une session shell, elle n'existe que dans le programme ou dans la session, elle disparait à l'extérieur, elle est oubliée.
Les variables d'environnement, elle est utilisée par le shell ou par un programme, elle est en quelque sorte spécifique à votre environnement de travail. Les variables d'environnement contiennent des informations sur votre compte, sur vos paramètres, ect..
Le shell bash vous montre la différence entre ces deux types de variables : une variables peut être écrite entièrement en minuscules mais avec l'initiale en majuscule par contre une variable d'environnement est toujours en majuscules. Sub`

suite en dessous jocolor
Revenir en haut Aller en bas
https://pc-informatique.1fr1.net/
Sub`
Admin
Sub`


Messages : 449
Date d'inscription : 21/07/2008
Localisation : Sur la planète DuDulle

Linux : shell bash Empty
MessageSujet: Variables d'environnement courantes de bash.   Linux : shell bash Icon_minitimeVen 12 Sep - 15:50

Variables d'environnement courantes de bash


Le shell bash possède plusieurs variables d'environnement. On peut en créer d'autre pour stocker divers éléments. Un élément stocké dans une variable peut être changé pour répondre à vos besoins.

Variable
Fonction
Valeur
HISTSIZE
Se souvient du nombre de commande tapées
Nombre de commande
HOME
Définit l'emplacement de votre répertoire de base
Chemin vers votre répertoire de base
MAILCHECK
Configure la fréquence de vérification par le shell bash du courrier.
Nombre de seconde
PATH
Définit les répertoires que le shell bash consulte et l'ordre de recherche pour trouver un nom de commande à partir de l'invite de commande
Série de répertoires séparés par des signes [:]
PS1
Configure l'invite de commande
Série de commandes et de caractères pour former l'invite

Les valeurs des variables


Une variable est une entité dont le contenu peut varier. Pour attribuer une valeur à une variable, on utilise le nom de la variable suivit par le signe égal = puis par la valeur à stocker:
MaVariable=MaValeur.

On peut visualiser le contenu des variables en utilisant le format echo $ variable ceci s'applique pour les variables régulières et d'environnement. Par exemple pour voir le contenu de la variable d'environnement de votre invite taper echo $PS1.
Pour visualiser toutes les variables d'environnement taper la commande env

On n'est pas dans l'obligation de conserver le shell original , on peut le modifier. Pour changer la valeur d'une variable d'environnement, on utilise le formant variable=valeur. Par exemple le paramètre par défault de HISTSIZE peut être fixé à 500, pour le réduire aux 250 dernières instructions on tape la commande HISTSIZE=250.

Une chaîne de caractères littérale est simplement ce qu'elle indique ; elle est placé entre guillemets simple ('), exemple: echo 'Hello, mon nom est $USER' .
Nous allons regarder une autre catégorie de chaîne de caractères , les chaines de caractères interpolés. Une valeur interpolée est une valeur pour laquelle le shell interprète les signes spéciaux avant de les traiter. Pour celà au lieu de guillemets simples (') on utilise les doubles guillemets (").
Par exemple : echo "Hello, mon nom est $USER"
Le résultat est que cette fois le nom de la variabble $USER est remplacée par la valeur réelle stockée dans cette variable.

Les piéces du puzzle PS1

Composant
Résultat
\!
Affiche la position de la commande dans la liste historique
\#
Affiche le nombre de commande utilisée pendant la session shell courante
\$
Affiche un $ pour les comptes d'utilisateurs ou un # pour le compte
\d
Affiche la date dans le format : jour/mois/année
\h
Affiche le nom de la machine sur laquelle vous êtes connecté
\n
Passe à la ligne suivante
\s
Affiche le bash pour le shell bash
\t
Affiche l'heure en cours au format 24h
\u
Affiche le nom d'utilisateur
\w
Affiche le plus bas niveau du répertoire en cours
\W
Affiche le répertoire en cours complet


Lorsque vous serez à l'aise avec ces manipulations, vous pourrez stocker vos modifications dans le fichier ~/.bash_profile

Les redirections et les pipes


Les redirections et les pipes facilitent la gestion du flux d'informations ; elles dirigent la sortie d'un programme vers l'entrée d'un autre programme. La plupart des utilitaires Linux qui exigent des entrées et des sorties ont été associés aux interfaces communes STDIN (dans standard), STDOUT (de standard) et STDERR (erreur standard). En appliquant cette méthode pour alimenter l'entrée des programmes ou lire des données en provenance de programmes, on peut combiner des utilitaires et élaborer des solutions élégantes sophistiquées. Sub`

La redirection


Le shell bash accepte un signe de "détour" en relation avec la commande. L'ensemble de ces signes est connu sous le terme de redirection. On va se limiter à la redirection de la sortie de commande car elle est la forme la plus courante d'une redirection. La redirection de la sortie indique à la commande d'envoyer les résultats vers un fichier et non pas vers l'écran.
Exemple:
Tapons la commande ls -la ~ on obtient un truc de ce genre:

drwx------ 2 sub sub 4096 Jul 29 07:48 .
drwx-rw-x 5 root root 4096 Jul 4096 Jul 27 11:57 ..
rw-r--r-- 1 sub sub 24 Jul 27 06:50 .bash_logout
rw-r--r-- 1 sub sub 230 Jul 27 06:50 . bash_profile
rw-r--r-- 1 sub sub 124 Jul 24 06:50 .bashrc


Si on veut envoyer cette information vers un fichier (redirection) plutôt que vers l'écran on entre cette commande :ls -la ~ > listing . Le > est le signe de redirection, il indique au shell bash d'envoyer le résultat de la commande dans le fichier listing au lieu de l'afficher à l'écran.
Pour visualiser le fichier listing entrez cette commande : cat listing
Si on retape la commande ls -la ~ > listing les données seront automatiquement écrasées. Le contenu du fichier est éffacé et remplacé par la nouvelle sortie.
Pour éviter celà on utilise >>, ainsi on tape la commande suivante : ls-la ~ >> listing

Les tubes ou pipes


Le shell bash permet de connecter les commandes , de telle manière que la sortie de l'une devient l'entrée de l'autre. On appelle celà , cette caractérsitique tube ou pipe. On visualise de nouveau en détail le contenu du répertoire /etc , une longue liste apparait . Une quantité importante d'informations défile à l'écran et même si vous pouvez visualiser les écrans précédents en utilisant les touches Maj + Page précédente, il est impossible de tout voir.

On a le choix entre 2 méthodes :
-- On peut envoyer les données vers un fichier avec redirection en tapant la commande ls -la /etc > ~/etclisting (on remplace le répertoire et le nom de fichier par celui que l'on veut).
-- On peut diriger la sortie vers la commande more qui va faire en sorte que le texte soit affiché à l'écran. On devra alors appuyer sur la touche "espace" pour acceder à l'écran suivant.
Pour diriger vers la sortie more on tape cette commande ls -la répertoire | more , ou est le répertoire que vous voulez lister. Le symbole | indique au shell bash que l'on utilise un tube .

Modification de l'environnement


Plusieurs fichiers de configuration contribuent à l'environnement de bash. Ce sont des fichiers texte qui peuvent être modifiés avec n'importe quel éditeur de texte. On peut les modifier ou ajouter des instructions pour les personnaliser.

/etc/profile est un fichier de configuration qui s'applique à l'ensemble du système. Les paramètres globaux de bash communs à tout les utilisateurs du système sont définis ici.
.bash_profile est placé dans le répertoire de base de chaque utilisateur. Ce fichier de configuration permet aux utilisateurs de personnaliser leur environnement shell, en plus des paramètres globaux définis par le fichier /etc/profile.
.bashrc est un fichier de configuration de sous-shell, lu à chaque fois qu'une instance shell est démarrée. Ce fichier fournit simplement un autre niveau de configuration de shell pour cet événement.
.bash_logout est un fichier qui est éxécuté lorsque l'utilisateur termine la session en cours, il supprime les fichiers de travail temporaire.

Les trois derniers fichiers se trouvent dans le répertoire personnel de l'utilisateur. Ils sont cachés comme l'indique le point (.) placé au début de chacun des noms.

diable
Revenir en haut Aller en bas
https://pc-informatique.1fr1.net/
Sub`
Admin
Sub`


Messages : 449
Date d'inscription : 21/07/2008
Localisation : Sur la planète DuDulle

Linux : shell bash Empty
MessageSujet: Re: Linux : shell bash   Linux : shell bash Icon_minitimeLun 15 Sep - 23:15

fin du shell bash a corriger Sleep
Revenir en haut Aller en bas
https://pc-informatique.1fr1.net/
Contenu sponsorisé





Linux : shell bash Empty
MessageSujet: Re: Linux : shell bash   Linux : shell bash Icon_minitime

Revenir en haut Aller en bas
 
Linux : shell bash
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Swap Linux
» Linux : Partitions

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Pc Informatique :: O.S (Operating system) / Tutos :: Tuto Linux-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser