<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.phobos-net.fr/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.phobos-net.fr/feed.php">
        <title>wikinotes</title>
        <description></description>
        <link>https://wiki.phobos-net.fr/</link>
        <image rdf:resource="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-05-06T21:03:02+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico">
        <title>wikinotes</title>
        <link>https://wiki.phobos-net.fr/</link>
        <url>https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-07T18:48:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:deplacer_les_fichier_caches</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff</link>
        <description>dev bash shell move deplacer

Déplacer les fichiers cachés avec mv

Lors de la phase de globbing, l’interpréteur remplace les métacaractères tels que * par les noms de fichiers. Par défaut ce développement n&#039;inclus pas les fichiers cachés :


# Le dossier courant contient 3 fichiers
# dont 1 est caché
tree -a .
.
├── fileA.txt
├── fileB.txt
└── .hidden_file.txt

0 directories, 3 files

# Afficher les valeurs après développement de &#039;*&#039;
echo *
fileA.txt fileB.txt</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T13:48:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff</link>
        <description>dev shell bash debug

Débogage de scripts shell

Avant toute exécution, on peut vouloir valider la syntaxe d&#039;un fichier de script. Pour cela on peut invoquer un shell avec l&#039;option -n (noexec) et le scrit à vérifier en paramètre:


bash -n monscript.sh


Le shell Bash peut être invoqué avec l&#039;option</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-19T13:23:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:redirection_stdin_stdout_stderr</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff</link>
        <description>dev bash code redirection

Bash : redirection des entrées/sorties

Pour un shell interactif l&#039;entrée standard (stdin), la sortie standard (stdout) et la sortie erreur standard (stderr) sont toutes les trois associées au terminal de l&#039;utilisateur.

Cela peut être visualisé en listant le contenu de</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-01T11:40:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:aide_manuel</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff</link>
        <description>dev bash aide manuel man todo

:TODO_DOCUPDATE:

Aide et manuel depuis le bash

La commande apropos permet de rechercher un terme dans l&#039;ensemble des sections du manuel (équivaut à man -k).


apt-get install man-db manpages


Les pages du manuel sont installées sous /usr/share/man</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-02-10T17:23:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:arguments_et_options_de_script</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff</link>
        <description>dev bash script option argument

Gestion des options et arguments dans les scripts Bash

Les arguments transmis au script bash courant sont accessibles via les variables $1 à $n. La variable $@ désigne l&#039;ensemble des arguments.

getopts et getopt sont deux moyens similaires mais non identiques pour gérer de façon avancée les options et les arguments passés aux scripts.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-05-28T13:34:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:convertir_colonne_en_ligne</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff</link>
        <description>dev bash convertion column colonne row

Bash: convertir une colonne en ligne

On cherche à reformater des données présentées d&#039;une colonne vers une ligne.

echo

La commande echo lorsqu&#039;elle reçoit en argument une chaîne de caractères contenant des LF ne les interprète pas, elle peut donc être utilisée pour convertir des données présentées en colonne:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T19:03:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:indirection</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff</link>
        <description>dev bash shell

Bash: Accès par indirection

L&#039;accès à une valeur par indirection est possible en shell. Pour cela il faut procéder à deux substitutions de variable l’une après l’autre. Le détail de la substitution de variable est abordé dans le wiki etapes_de_substitution . Pour relancer une phase de substitution on utilisera la commande</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-18T14:46:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_definition_variable</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff</link>
        <description>dev bash variable code snippet exemple guide howto

Bash : vérifier l’existence d&#039;une variable

Pour vérifier qu&#039;une variable est définie en bash, une méthode simple consiste à utiliser la primitive declare:


# Retourne 0 si MAVAR existe
declare -p MAVAR &amp;&gt; /dev/null

# Équivalent avec l&#039;alias typeset
typeset -p MAVAR &amp;&gt; /dev/null</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T11:02:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:bashdb</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff</link>
        <description>dev bash script debug shell

:TODO: :TODO_DOCUPDATE:

bashdb

Installation

Sur les version récentes des distributions Debian like bashdb n&#039;est plus proposé dans le gestionnaire de paquets mais on peut l&#039;installer facilement à partir des sources.


apt-get install binutils

./configure

make
make check

# vérifier la valeur de umask
# valeur attendue 0022
umask
make install</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-27T10:35:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:changer-base</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff</link>
        <description>dev bash base conversion binaire

Changer la base d&#039;un nombre en bash

L&#039;utilitaire bc peut être utilisé pour changer un nombre de base. Pour cela, utiliser les variables prédéfinies ibase et obase:


echo &quot;obase=10; ibase=16; a=AC; print(a);&quot; | bc


Ici on redéfinit ibase à 16 pour spécifier que le nombre en entrée utilise la base hexadécimale, on définie la variable a, spécifie ensuite que la sortie sera en base décimale avec</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T10:28:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:generer_nombre_aleatoire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff</link>
        <description>dev bash shell

Bash: Générer un nombre aléatoire

Pour obtenir un nombre aléatoire dans l&#039;intervalle [0-32767] depuis le shell, on peut utiliser la variable $RANDOM.

Pour limiter la valeur maximum de l&#039;intervalle entre [0-N] avec N &lt; 32767, on peut utiliser l&#039;opérateur modulo. Lorsqu&#039;on divise un nombre par N, le reste de la division est toujours compris entre [0-(N-1)]. Le reste est disponible via l&#039;opérateur modulo.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T22:30:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:usage_guillemets</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff</link>
        <description>dev bash shell

:TODO: :TODO_DOCUPDATE:

Usage des guillemets

Notes et exemples d&#039;usages des guillemets simples ou doubles dans les scripts bash et sur la ligne de commande.

Notons qu&#039;on ne peut pas placer de guillemet simple même protégé (échappé par &#039;\&#039;) entre 2 guillemets simples:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-19T09:08:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_mode_execution_interactif</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff</link>
        <description>dev bash exemple code snippet guide howto

:TODO_DOCUPDATE:

Bash : vérifier le mode d&#039;exécution interactif

Lorsque Bash est lancé en mode interactif l&#039;option -i est précisée et la variable PS1 est définie. Les options actives sont listées dans la variable $-.

Le script ~/.basrc utilise la valeur de cette variable pour déterminer si l&#039;exécution courante est interactive ou non et adapter son comportement.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-18T08:37:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_permissions_via_stat</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff</link>
        <description>bash exemple extrait guide how-to code snippet

Bash : vérifier les droits d&#039;accès sur un fichier

Pour vérifier les permissions d&#039;accès d&#039;un fichier ou d&#039; un dossier depuis un script Bash, on peut utiliser la commande stat avec l&#039;option --format qui permet de retourner les droits d&#039;accès au fichier sous forme octale:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-12T11:32:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:afficher_les_separateurs_arguments</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff</link>
        <description>dev bash linux argument option parametre

Bash : Afficher les séparateurs d&#039;arguments

Les différents shells GNU/Linux déclarent une variable IFS listant les caractères permettant de délimiter les arguments. On peut afficher la valeur de ces séparateurs de champ avec la commande suivante:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-05-14T10:18:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:classes_de_caracteres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff</link>
        <description>dev bash cli filtre

Les classes de caractères

Les classes de caractères décrivent des sous-ensembles de caractères. Elles peuvent être utilisées notamment par les programmes CLI de type filtre tels que tr, grep etc
 Classe        Description</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T18:10:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:convertir_saut_de_ligne_en_espace</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff</link>
        <description>dev bash shell

Bash: Convertir les sauts de lignes en espaces

Pour passer de données saisies ligne par ligne à des données séparées par des espaces, on peut utiliser une combinaison des commandes cat et echo:

Le fichier data.txt contient des données saisies lignes par ligne:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:rechercher-chaine-dans-plusieurs-fichiers</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff</link>
        <description>sysadmin dev script bash recherche

Rechercher une chaîne dans un ensemble de fichiers

Retrouver une chaîne de caractères dans un ensemble de fichiers sources. Ce script est une simple boucle for. Elle peut être directement tapée dans l’interpréteur bash. On récupère les fichiers dont on souhaite scruter le contenu. Ils sont fournis séquentiellement en argument à la commande grep avec les options</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-02-17T09:42:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:structure-case</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff</link>
        <description>dev sysadmin bash case switch

Structure de contrôle case

Au sein des scripts bash, la structure de contrôle case ou selon (équivalent du switch... case en C) permet d&#039;effectuer différents traitements en fonction des valeurs attendues pour une variable donnée.


case &quot;$C&quot; in
&quot;1&quot;)
    do_this()
    ;;
&quot;2&quot; | &quot;3&quot;)
    do_what_you_are_supposed_to_do()
    ;;
*)
    do_nothing()
    ;;
esac</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:structure-if</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff</link>
        <description>dev bash

Structure de contrôle if en bash


if condition
then
   commande 1
   ...
   commande n
elseif condition 2
then
  ...
else
  ...
fi


Références

	*  &lt;http://www.commandeslinux.fr/structure-de-controle-if/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:recommandations</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff</link>
        <description>dev shell bash

Recommandations

Quelques conseils pour l&#039;écriture de scripts shell.

	*  Nom du script sans espace ou méta-caractères
	*  Le shabang en début de script pour spécifier l’interpréteur.
	*  Commenter abondamment, créer un cartouche avec une description.</description>
    </item>
</rdf:RDF>
