0 Votes

Modifications pour le document Scripts perso

Modifié par john le 2026/09/20 20:23

Depuis la version 7.1
modifié par john
sur 2026/09/20 20:23
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 4.1
modifié par john
sur 2025/05/25 00:19
Commentaire de modification : Il n'y a aucun commentaire pour cette version

Résumé

Détails

Propriétés de la Page
Titre
... ... @@ -1,1 +1,1 @@
1 -Scripts perso
1 +ScriptsPerso
Contenu
... ... @@ -1,8 +1,10 @@
1 += Scripts personnels =
2 +
1 1  {{toc/}}
2 2  
3 3  == Présentation ==
4 4  
5 -Cette section regroupe mes **scripts Bash et outils d’automatisation** développés ou adaptés pour mes besoins personnels.
7 +Cette section regroupe mes **scripts Bash et outils d’automatisation** développés ou adaptés pour mes besoins personnels.
6 6  Ils couvrent des tâches variées : sauvegardes, nettoyage de fichiers, interactions graphiques avec Zenity, organisation de fichiers, etc.
7 7  
8 8  ----
... ... @@ -22,69 +22,51 @@
22 22  
23 23  == Bonnes pratiques à suivre ==
24 24  
25 -Toujours commencer par le shebang :
27 +* Toujours commencer par le shebang :
28 +{{code language="bash"}} #!/bin/bash
29 + {{/code}}
26 26  
27 -{{code language="bash"}}
28 -#!/bin/bash
29 -{{/code}}
31 +* Mettre le script en mode strict :
32 +{{code language="bash"}} set -euo pipefail
33 + IFS=$'\n\t'
34 + {{/code}}
30 30  
31 -Mettre le script en mode strict :
36 +* Documenter les fonctions :
37 +{{code language="bash"}} # Fonction : sauvegarde un répertoire
38 + function sauvegarde() {
39 + rsync -av "$1" "$2"
40 + }
41 + {{/code}}
32 32  
33 -{{code language="bash"}}
34 -set -euo pipefail
35 -IFS=$'\n\t'
36 -{{/code}}
43 +* Utiliser `getopts` pour gérer les options :
44 +{{code language="bash"}} while getopts ":s:d:" opt; do
45 + case $opt in
46 + s) source=$OPTARG ;;
47 + d) dest=$OPTARG ;;
48 + esac
49 + done
50 + {{/code}}
37 37  
38 -Documenter les fonctions :
39 -
40 -{{code language="bash"}}
41 -# Fonction : sauvegarde un répertoire
42 -sauvegarde() {
43 - rsync -av "$1" "$2"
44 -}
45 -{{/code}}
46 -
47 -Utiliser ##getopts## pour gérer les options :
48 -
49 -{{code language="bash"}}
50 -while getopts ":s:d:" opt; do
51 - case $opt in
52 - s) source=$OPTARG ;;
53 - d) dest=$OPTARG ;;
54 - esac
55 -done
56 -{{/code}}
57 -
58 -Vérifier la syntaxe avant de lancer un script, surtout après modification :
59 -
60 -{{code language="bash"}}
61 -bash -n monscript.sh
62 -{{/code}}
63 -
64 -{{warning}}
65 -Dans une commande écrite sur plusieurs lignes, la barre oblique inverse de fin de ligne ne doit être suivie de rien, pas même d'un espace : sinon la ligne n'est plus continuée, et le script se comporte autrement sans erreur visible. Contrôle : ##cat -A monscript.sh##, la fin de ligne doit afficher ##\$##.
66 -{{/warning}}
67 -
68 68  ----
69 69  
70 70  == Liste des scripts disponibles ==
71 71  
72 -=== 🔹 [[Sauvegarde automatique>>doc:.Sauvegarde.WebHome]] ===
56 +=== 🔹 [[Sauvegarde automatique>>Wiki Batcave John.TutosLinux.ScriptsPerso.ScriptsPerso/Sauvegarde.WebHome]] ===
73 73  
74 -Un script ##rsync## avec journalisation et gestion via ##cron##.
75 -📌 //Idéal pour sauvegarder ses documents sans effort.//
58 +Un script `rsync` avec journalisation et gestion via `cron`.
59 +📌 *Idéal pour sauvegarder ses documents sans effort.*
76 76  
77 -=== 🔹 [[Nettoyage de système>>doc:.Nettoyage.WebHome]] ===
61 +=== 🔹 [[Nettoyage de système>>Wiki Batcave John.TutosLinux.ScriptsPerso.ScriptsPerso/Nettoyage.WebHome]] ===
78 78  
79 -Un script qui supprime caches, fichiers temporaires, et dépendances orphelines.
80 -📌 //Parfait pour garder une machine légère et propre.//
63 +Un script qui supprime caches, fichiers temporaires, et dépendances orphelines.
64 +📌 *Parfait pour garder une machine légère et propre.*
81 81  
82 -=== 🔹 [[Intégration Nautilus + Zenity>>doc:.NautilusZenity.WebHome]] ===
66 +=== 🔹 [[Intégration Nautilus + Zenity>>Wiki Batcave John.TutosLinux.ScriptsPerso.ScriptsPerso/NautilusZenity.WebHome]] ===
83 83  
84 -Ajoute des actions personnalisées au clic droit dans GNOME, via des boîtes de dialogue interactives.
85 -📌 //Super pour les utilisateurs moins à l’aise avec la ligne de commande.//
68 +Ajoute des actions personnalisées au clic droit dans GNOME, via des boîtes de dialogue interactives.
69 +📌 *Super pour les utilisateurs moins à l’aise avec la ligne de commande.*
86 86  
87 -=== 🔹 [[Organisation automatique de fichiers>>doc:.Classement.WebHome]] ===
71 +=== 🔹 [[Organisation automatique de fichiers>>Wiki Batcave John.TutosLinux.ScriptsPerso.ScriptsPerso/Classement.WebHome]] *(à venir)* ===
88 88  
89 89  Trie automatiquement les fichiers dans des dossiers selon leur type, date ou nom.
90 90  
... ... @@ -92,27 +92,24 @@
92 92  
93 93  == Où placer mes scripts ? ==
94 94  
95 -* Personnel : ##~~/.local/bin/##
96 -* Système : ##/usr/local/bin/## (nécessite ##sudo##)
79 +* Personnel : `/bin/` ou `/.local/bin/`
80 +* Système : `/usr/local/bin/` (nécessite `sudo`)
97 97  
98 -Ajouter le dossier personnel au ##$PATH##, dans ##~~/.bashrc## :
82 +N’oublie pas d’ajouter le dossier à ton `$PATH` :
99 99  
100 100  {{code language="bash"}}
101 -export PATH="$HOME/.local/bin:$PATH"
85 +export PATH=$HOME/bin:$PATH
102 102  {{/code}}
103 103  
104 -Et rendre les fichiers exécutables :
88 +Et de rendre les fichiers exécutables :
89 +{{code language="bash"}}chmod +x monscript.sh{{/code}}
105 105  
106 -{{code language="bash"}}
107 -chmod +x monscript.sh
108 -{{/code}}
109 -
110 110  ----
111 111  
112 112  == Bonnes idées de scripts futurs ==
113 113  
114 114  * Archivage automatique d’un dossier par date
115 -* Extraction automatique de ##.tar.gz##
96 +* Extraction automatique de `.tar.gz`
116 116  * Notification de batterie faible
117 117  * Upload automatique vers Nextcloud
118 118  * Backup de base de données PostgreSQL/MariaDB
... ... @@ -122,9 +122,9 @@
122 122  
123 123  == Liens utiles ==
124 124  
125 -* [[explainshell.com>>https://explainshell.com/]] — comprendre une commande Bash ligne par ligne
126 -* [[Bash Hackers Wiki>>https://wiki.bash-hackers.org/]]
127 -* [[ShellCheck>>https://www.shellcheck.net]] — vérifier ses scripts en ligne
106 +* Explainshell.com [[https:~~/~~/explainshell.com/>>https://explainshell.com/]]— Pour comprendre une commande Bash ligne par ligne
107 +* Bash Hackers Wiki [[https:~~/~~/wiki.bash-hackers.org/>>https://wiki.bash-hackers.org/]]
108 +* Shellcheck [[https:~~/~~/www.shellcheck.net>>https://www.shellcheck.net]]//— Pour vérifier ses scripts en ligne//
128 128  
129 129  ----
130 130  
... ... @@ -131,10 +131,4 @@
131 131  == Liens internes ==
132 132  
133 133  * [[Retour à l’accueil>>doc:Wiki Batcave John.WebHome]]
134 -* [[Tutos Linux>>doc:Wiki Batcave John.TutosLinux.WebHome]]
135 -
136 -----
137 -
138 -== Toutes les pages ==
139 -
140 -{{children/}}
115 +* [[Tutos Linux>>Wiki Batcave John.TutosLinux]]