t parfois amené à choisir l’un d’eux plutôt qu’un autre.
* Le mot **programme** met l’accent sur les... commandes saisies par l'utilisateur et destinées au système d’exploitation. Il se présente sous la fo... er pour saisir les ordres qu’il voulait soumettre au système. **C’est cette interface d’échange textue... ts périphériques, qui sont des dispositifs dédiés aux entrées et sorties de données vers et depuis le
re ligne du fichier est le "shebang" en référence
aux deux premiers caractères de cette ligne: le diès... lais)
<note>
Le shebang doit toujours être écrit au tout début du fichier script. Il permet d’indiquer au système l’interpréteur à utiliser pour les lignes... ntaxe de manipulation des variables est identique au mode interactif. Les variables sont locales au sc
le shell passe par une phase d'analyse syntaxique au cours de laquelle il développe les motifs en les ... es de l'intervalle
^ [!...] | négation aucun des caractères de l'ensemble ou l'intervalle. ... tre utilisées en Bash.
^ [:alnum:] | Correspond aux caractères alphabétiques et numériques. Équivalent à A-Za-z0-9. |
^ [:alpha:] | Correspond aux lettres. Équivalent à A-Za-z. |
^ [:blank:] | C
Après l'option on indique la commande a exécuter. Au sein de cette commande, on fait référence à l'obj... le caractère ';' mais comme ce métacaractère est aussi le caractère de séparateur de commande pour le... (regex)
grep peut également fournir le contexte autour du motif recherché grâce aux options:
* **-B**(Before) pour afficher le résultat accompagné d'u
t fournie:
* par les commandes elles-mêmes;
* au travers d’utilitaires dédiés.
Lorsque vous n’ête... le système d’exploitation a été installé avec un autre langage.
===== L'utilitaire man =====
Les sy... des de gestion du système (généralement réservées au super utilisateur),
- documentation du noyau.
... iant un premier argument:
<code bash>
man 1 read
Aucune entrée de manuel pour read en section 1
</cod
* est spécial, c'est un métacaractère qui indique au shell Bash d'**effectuer une substitution de vari... ==
La sortie d'une commande peut être substituée aux syntaxes suivantes:
<code bash>
# commande entre... sa sortie est ensuite intégrée en argument d'une autre commande:
<code bash>
# La commande echo est ... conde ligne) les caractères spéciaux interprétés, autrement dit les substitutions ou les inhibitions a
onsiste à conditionner l’exécution d’une commande au résultat d’une autre. Selon le code retour d’une première expression, une autre sera ou ne sera pas exécutée.
^ %%cmd1 && cmd... conditionner l’exécution d’une suite de commandes au résultat d’une condition.
<code bash>
if conditi
st assimilé à vrai s’il vaut 0 et à faux dans les autres cas.
===== La commande test =====
Deux synt... gt 10
# utilisation des crochets
# NB: attention aux espace après crochet ouvrant
# et avant crochet ... haînes de caractères ====
Des opérateurs dédiées aux chaînes de caractères
^ ^ Signification ... est d’accepter des expressions écrites comme les autres langages de programmation. Pour cela certains
ion des fonctions est une bonne pratique qui:
* augmente la lisibilité;
* facilite la maintenance.... à celle d'une commande classique. Cela se vérifie aussi pour le cas où on doit passer des arguments à ... s arguments doivent être placés les uns après les autres juste après le nom de la fonction:
<code bas... riable valent pour l’ensemble du script. Et c’est aussi le cas pour les variables utilisées dans le co
mande est préfixée par **une invite de commande** aussi connue sous le nom de **prompt**. Elle se term... utée la commande.
Elle contient éventuellement d'autres informations. L'invite de commande indique en... s man date echo
ls est un alias vers « ls --color=auto »
man est /usr/bin
date est haché (/usr/bin/dat... n/date
* echo est une commande builtin (interne au bash comme type).
Une ligne de commande est cons
s pour toutes les sessions du shell et transmises aux processus fils. **Par convention** le nom des va... tés
# en partant de 0. L'index 3 correspond donc au 4ième élément du tableau
echo ${tab[3]}
40
echo... erm-256color
</code>
La variable **PATH** permet au shell de retrouver les commandes du système sans ... shell courant. Pour qu'elle puisse être transmise aux processus fils un attribut spécifique doit être
sont pas interprétés.
* La commande est interne au shell. Elle s’exécute dans le même processus que ... stitution arithmétique la commande let n’effectue aucune sortie. Ainsi l’expression peut être une affe... sur une ligne de commande. De plus elle n’affiche aucun résultat.
</note>
La commande let permet de f... r des opérations arithmétiques sans avoir recours aux commandes **expr** ou **let**.
<code bash>
$ de
</key>+<key>u</key> | coupe du début de la ligne au curseur |
^ <key>ctrl</key>+<key>w</key> | coupe... l'historique permet également de faire références aux arguments des précédentes commandes:
<code bash... es?
* history
Quel raccourci permet de revenir au début de la ligne de commande ?
* <key>ctrl</ke
er.
<code bash>
# Sélection par caractère du 1ier au 6ieme
$ cat /path/to/file.txt | cut -c1-6
# Séle... at** assemble les fichiers les uns à la suite des autres.
<code bash>
$ cat file1 file2 filen
</code>
... nslate)) remplace une liste de caractères par une autre.
<code bash>
# Contenu du fichier NOM.txt
$ c