permet de rechercher des fichiers en fonction de nombreux critères. On pourra citer notamment:
* **-name** ou **-iname** pour spécifier les nom ou motifs a trouver
* **-perm** pour spécifier ... c et /bin
# tous les fichiers ou dossiers dont le nom commence par a
find /etc /bin -name "a*"
# NB: L... t nécessaires pour inhiber
# le développement des noms de fichiers par le shell.
# Le motif doit être t
ltrantes.
Un filtre est donc un moyen, comme son nom l’indique, de simplifier, séparer, épurer ou clar... en plusieurs morceaux. Les fichiers créés seront nommés à l'aide du préfixe passé en paramètre et d'un... fichier généré peut être précisée en octets ou en nombre de lignes.
<code bash>
# découpe file en fich... s deux fichier en utilisant pour
# clé la colonne nom de ville
$ join -1 3 -2 1 users.txt cities.txt
L
ermantes et du bloc de commandes entre accolades
nom_fonction() {
cmd1
cmd2
...
cmdn
}
# Pour... er par
# son mnémonique en aval de la définition
nom_fonction
...
# deuxième appel
nom_fonction
</code>
La syntaxe d'appel d'une commande est identique... re placés les uns après les autres juste après le nom de la fonction:
<code bash>
nom_fonction a1 a2 a
is. On dit que la boucle fait plusieurs tours. Le nombre de
tours qui sera réalisé est déterminé par le... sh
</code>
Si l'on souhaite pouvoir utiliser un nom de fichier placé en argument, on peut utiliser la... emier argument de la ligne de commande et donc le nom du fichier
à lire en entrée de la boucle.
=====... endre un paramètre un entier positif indiquant le nombre de boucles imbriquées qu'il faut remonter.
r **une invite de commande** aussi connue sous le nom de **prompt**. Elle se termine par un curseur gén... rminal**. Ainsi, il est souvent composé:
* D'un nom d'utilisateur, pour qui les commandes vont être exécutées;
* Du nom de la machine sur laquelle s'exécute le shell;
... séparés par des espaces. Le format général est le nom de la commande (mnémonique) suivi d'arguments pro
ote warning>
Ne pas introduire d'espaces entre le nom de la variable, l'opérateur d'affectation et la v... utiliser la valeur de la variable, on préfixe le nom de celle-ci par le caractère spécial **'$'**
<co... stitution de variable** qui consiste à changer le nom de la variable qui suit le caractère $ par sa val... ée de partielle. Dans ce cas, la substitution des noms de fichiers et la fonction de séparation des car
nsmises aux processus fils. **Par convention** le nom des variables d’environnement est en lettres capi... :
<code bash>
# Attention pas d'espaces entre le nom de variable
# le symbole d'affectation '=' et la ... ) de la variable **var** |
^ %% ${#var[*]}%% | Nombre d'éléments de la variable **var** (taille du t... e bash>
# Création d'une variable d'environnement nommée TEST
declare -x TEST=test_value
# Affiche la
dans un fichier texte qu’on appelle un script. Le nom de ce fichier devient alors une nouvelle commande... r au contenu d’une variable, il faut préfixer son nom par le caractère ’$’.
Pour être complet, on peut... bles spéciales sont les suivantes:
* **$0**: le nom du script;
* **$#**: le nombre d’arguments existants;
* **$***: la liste de tous les arguments;
ilitaires dédiés.
Lorsque vous n’êtes pas sûr du nom de la commande à utiliser pour accomplir une acti... ande, il suffit d’appeler man avec en argument le nom de la commande dont on cherche le manuel.
La com... aite pour éviter les ambiguïtés. En effet un même nom peut faire référence à une fonction d’une bibliot... e page de manuel contient plusieurs parties/:
* NOM,
* SYNOPSIS,
* DESCRIPTION,
* OPTIONS,
*
matique shell bash}}
====== Shell: Expansion des noms de fichiers ======
Bash permet à l'utilisateur ... il développe les motifs en les remplaçant par les noms de fichiers ou dossiers correspondant. Cette pha... semble des fichiers du répertoire courant dont le nom commence par une majuscule:
<code bash>
ls -l [[:... e le motif ab ou cd.
La substitution étendue du nom de fichier, accessible en positionnant l’option e
s que la commande %%(( ))%% se comporte comme son nom l’indique comme une commande sur une ligne de com... essai
$ echo $a
0
</code>
===== Calculs sur des nombres décimaux =====
**expr** et le shell peuvent faire des calculs sur des nombres entiers. Dans l’utilisation courante d’un she... n indiquant scale=10,
# la commande bc codera les nombres sur une précision de 10 décimales.
$ b=10
$ e
r chacun de ces types de périphériques, il y a de nombreux modèles avec pour chacun d’eux des spécifici... ont le code serait volumineux avec le risque d’un nombre important de bugs. Aussi, la solution proposée... seul qui reste en permanence en exécution. On le nomme également noyau (kernel). Le rôle du noyau est
ents des précédentes commandes:
<code bash>
# le nom de la commande est erroné mais les paramètres cor... ici on crée un nouveau fichier par altération du nom de fichier
# récupéré sur l'argument de la comman... ey>a</key>
Quel raccourci permet de compléter le nom d'une commande, d'un répertoire ou d'un fichier e
ion|Aide à l’interaction]]
* [[220_abreviations_noms_fichiers|Abréviations pour le nom des fichiers]]
* [[230_constructions_syntaxiques|Constructions sy
ntaxe que celle utilisée par la
# substitution de nom de fichier
[[ titu == t?t? ]]
# Vérifie si la ch... l'expression régulière
[[ "$str" =~ regex ]]
[[ "$nombre" =~ ^[+-]?[[:digit:]]+$ ]];
</code>
===== Tes