Voici tous mes scripts que je souhaite partager avec le plus grand nombre.
Vos commentaires, remarques sont les bienvenus.
http://www.quennec.fr/contact
Ma clé publique GPG:
http://pgp.mit.edu/pks/lookup?op=get&search=0x880229ECCEA84BBA
Key fingerprint = 36DA 971E 1903 FB50 07F4 C621 8802 29EC CEA8 4BBA
gpg --recv-keys 0x880229ECCEA84BBA
SHA256SUM
825e356515bba1e73438092fa3d6f8157c3d858a5061bcb1d6eeff4ec6beee63 anagramme.sh
3dd10d993f6a360b16f2d1f00e356e19a8fb05dcfeff20a7f00dfd16e55c58df anagramme.sh.asc
79860ca3dde5fefe6f949eb496f000a904c642e4d40be5f6a71a48f8c798a245 configure_bind9.sh
11f683f0a65dce09cfd5432e0debde8950f11d1baaaae2847d5ee26e12e166b4 configure_bind9.sh.asc
b3f941eb2e661fed193acf26481e3f4f661bb05043beae220c0362e9b44a9d7f curl.igalerie.php
364128d323768b28a39dac856ae4a88bdf583d7d00b46d95ccd7a3cf7194a1c6 curl.igalerie.php.asc
f4a779cfcaa0df84a47a3e74d76c8747998bc2adc2d215d5f466450a4092ee3c getInetAddr.sh
7ea71784d7f8df60e64e525df67812ee59883f29c335d26a1b2096193ac09f0e getInetAddr.sh.asc
cdab7e11b499cdae1305b081497b7561efbc31d35c5d69cb2d8acc6a3b35e44d liste.de.mots.francais.frgut.txt.iso-8859-1
a3806b0da36a73bdad0307d603fd0aa38476dcc324fb4c10537c769174989295 liste.de.mots.francais.frgut.txt.iso-8859-1.asc
d014d66f757f7922125ed57688b0c118ec372b22c140dc2784a276cdc82e9da1 liste.de.mots.francais.frgut.txt.utf-8
caa261fda25fa5548cae58a69dd83b88e9e509b1788ebe4d0848e87bd85ae577 liste.de.mots.francais.frgut.txt.utf-8.asc
2600bb3da6ca9d0098618631de344a657915cec298ab46efdf51555769c2d617 pgcd.sh
f347092852f62f2c48433436782262fe9f3e669cb502fdb20b5bdc24e8a568ae pgcd.sh.asc
ee41f2901353c16738932a090a82a2e8a631e3c6526ac6a0325ee29bb99eb2af rechercheDoublons.sh
00a200a373e8c72e289fed84ce716640b6a37d79c409dd470da69a1a45c0fcd7 rechercheDoublons.sh.asc
0694b4cff027ac727eaad1ce9cac481c10d542d3375f03a220bd7a0312d7800a syllabes.sh
df2dfd675abb0742ff838fe0467776f3c1d06c6829bfd905dbd663356640c18a syllabes.sh.asc
5946130e2b8ec21c03af713705264f5d2be6312263a0c83fea56145a975144f0 functions.inc
8a25429706cee8d2de47cee059b25cfebc58ec63b205c75b9d0e6907e50a7c1b functions.inc.asc
5b745b2c7897c0c07bd33d7467adb837588bd412d4eea107b758586e2c0522b2 fibonacci.php
2b917506ec9732c1272df4345a16bfecd0dce54754fd7c40eb7830a3653a4818 fibonacci.php.asc
d41722d8fb508f584b063d7bf0e8d1c19a119d62deba46245f8afdd4766ef391 fibonacci.py
07ef45ae9fb104c64f9a150c0fadd8c99068f191c80378b415b1f1531ac70812 fibonacci.py.asc
560b6b2b3446cb7c7fd26f6576d4e469890791dbb94db9254f446c9e304c50f3 fibonacci.sh
d91fac27b81d7fc938281630ee405f75da3a6869e6e95955e7ea7bc756dce939 fibonacci.sh.asc
syllabes.sh
Ce script permet de découper des mots en syllabes.
Exemple
$ ./syllabes.sh coucou
coucou => cou-cou
rechercheDoublons.sh
Ce script permet de rechercher tous les doublons dans les fichiers d'un répertoire.
Il affiche la somme MD5 ainsi que la liste des fichiers identiques.
Exemple
$ ./rechercheDoublons.sh /etc
Empreinte MD5 identique : 0354433cff0d5c554bb0c805f95d60ae
*/etc/bash.bash_logout
*/etc/defaults/etc/bash.bash_logout
Empreinte MD5 identique : 0715ef1bcd139252fab1a270d39004e2
*/etc/defaults/etc/profile.d/tzset.csh
*/etc/profile.d/tzset.csh
...
anagramme.sh
Ce script permet d'afficher tous les anagrammes d'un mot.
Le script requiert un dictionnaire de mots.
Le dictionnaire indiqué ci-dessous contient un peu plus de 336000 mots.
Il peut également être téléchargé ici
L'option facultative -d permet de ne pas prendre en compte les accents.
L'option -f permet d'indiquer le fichier dictionnaire.
L'option -l permet d'indiquer le nombre de lettre des anagrammes.
L'option -c permet d'indiquer le mot ou la liste des lettres pour les anagrammes.
Exemple
./anagramme.sh -f liste.de.mots.francais.frgut.txt.utf-8 -l 11 -c programmation
Liste des mots de 11 lettre(s) et contenant les lettres "programmation" :
1 - programmait
2 - programmant
pgcd.sh
*[pgcd]: Plus Grand Diviseur Commun
*[ppcm]: Plus Petit Multiple Commun
Ce script permet de calculer le pgcd et le ppcm des nombres passés en paramètre.
Exemple
./pgcd.sh 45 55
PGCD (45,55) = 5
PPCM (45,55) = 495
configure_bind9.sh
Ce script permet de configurer le serveur DNS BIND en créant automatiquement tous les fichiers nécessaires.
Exécution
./configure_bind9.sh
Répondre aux différentes questions posées par le script.
curl.igalerie.php
igalerie est une application php qui permet de créer des galeries d'images en ligne.
L'ajout d'images dans la galerie peut se faire via ftp (très pratique) mais il faut obligatoirement exécuter une fonction pour que les images soient affichées dans la galerie.
Cette fonction est disponible via un bouton accessible uniquement dans la section administration du site.
Il est donc nécessaire d'être authentifié pour exécuter cette fonction.
Pour effectuer ce scan automatiquement à intervalle régulière, j'ai donc mis au point le script php suivant avec l'extension curl.
Exécution
php curl.igalerie.php
Un rapport sur le nombre d'images indexées est affiché à l'écran.
getInetAddr.sh
Ce script retourne l'adresse IP de chaque interface réseau trouvée.
Exécution
./getInetAddr.sh
functions.inc
Ce script contient plusieurs fonctions qui permettent de manipuler les variables.
Par exemple, vérifier qu'une variable est numérique, qu'une variable est de type int, qu'une variable est un booléen etc etc...
Ces fonctions (quelques unes) ont été inspirées de PHP.
Ce script peut être inclu dans d'autres scripts de cette manière (l'une ou l'autre des deux méthodes):
source functions.inc
. functions.inc
Le fichier peut également être inclu dans le fichier ~/.bashrc (de la même manière) afin de disposer de toutes ces fonctions directement dans le prompt.
Exemple
$ is_numeric azerty ; echo $?
1
$ is_numeric ee55ee ; echo $?
1
$ is_numeric 65465484 ; echo $?
0