Pages : 1
#1 Le 21/12/2005, à 14:49
- mesmento
script de nettoyage slantNET
Salut tout le monde, voici mon premier vrai "petit gros" script !
D'accord c'est super simple, mais je suis quand même super content d'avoir fait autre chose qu'une simple automatisation d'une commande de base en bash. Il s'agit d'une version améliorée du script de nettoyage que j'avais proposé ici:
http://forum.ubuntu-fr.org/viewtopic.php?id=21359
- ajout d'un menu qui permet de choisir entre la supression des fichiers backup et leur sauvegarde dans un fichier compressé daté.
- ajout de la gestion des fichiers de type ".bak"
Le script suppose que vous disposiez des dossiers ~/Divers/backup/tmp. Ceci est facilement configurable.
Le script nécessite l'installation de cowsay et de figlet, pour cela:
sudo apt-get install cowsay figlet
Voici le script:
#!/bin/sh
# Présentation du logiciel.
figlet -cf shadow slantNET
echo "------"
echo "Ceci est un petit script pour gérer les fichiers backup."
echo
echo "ATTENTION : il est conseillé de disposer de l'utilitaire \"cowsay\"!"
echo "pour cela tapez un simple \"sudo apt-get install cowsay\""
echo "(la raison ? Essayez de taper autre chose que 1, 2, 3 ou 4 pour voir... )"
echo
echo "Choisissez une option:"
echo "------"# Création du menu
OPTIONS="Faire_une_sauvegarde_des_fichiers_backup Supprimer_les_fichiers_backup Quitter À_propos"select opt in $OPTIONS; do
# Option "Quitter".
if [ "$opt" = "Quitter" ]; thenecho "-----"
echo "Terminé"
echo "-----"
exit# Option "Faire une sauvegarde etc..."
elif [ "$opt" = "Faire_une_sauvegarde_des_fichiers_backup" ]; then# 1) Copie
# copie des fichiers du type test.test~ vers ~/Divers/backup/tmp/
cp `find ~/ -name "*.*~"` ~/Divers/backup/tmp
# puis des fichiers du type test~
cp `find ~/ -name "*~"` ~/Divers/backup/tmp
# et enfin des fichiers backup
cp `find ~/ -name "*.bak"` ~/Divers/backup/tmp# 2) Compression
# Compression des fichiers déplacés dans "backupfiles" dans un fichier tar.gz daté.
COMPRESS=~/Divers/backup/backup_$(date +%d-%m-%Y).tar.gz
tar -czf $COMPRESS ~/Divers/backup/tmp/*# 3) Suppression
# Supression des fichiers de "backupfiles"
rm -i ~/Divers/backup/tmp/*echo "-----"
echo "Terminé"
echo "-----"
echo "Choisissez une option:"
echo "1) Sauvegarder 2) Supprimer 3) Quitter 4) À propos"# Option "Supprimer"
elif [ "$opt" = "Supprimer_les_fichiers_backup" ]; then
# nettoyage des fichiers du type test.test~
rm -i `find ~/ -name "*.*~"`
# nettoyage des fichiers du type test~
rm -i `find ~/ -name "*~"`
# nettoyage des fichiers backup
rm -i `find ~/ -name "*.bak"`echo "-----"
echo "Terminé"
echo "-----"
echo "Choisissez une option:"
echo "1) Sauvegarder 2) Supprimer 3) Quitter 4) À propos"elif [ "$opt" = "À_propos" ]; then
echo "----"
echo "Ce script est une création de Monsieur Camille"
echo "Il est distribué sous licence GPL"
echo "-----"
echo "Choisissez une option:"
echo "1) Sauvegarder 2) Supprimer 3) Quitter 4) À propos"else
cowsay -e @@ -f sodomized Mauvaise option\ \!\!
echo "-----"
echo "Choisissez une option:"
echo "1) Sauvegarder 2) Supprimer 3) Quitter 4) À propos"fi
done
Il vous suffit de copier le script dans un fichier (ex: slantnet.sh) puis de le rendre exécutable ( chmod +x slantnet.sh ).
Toute suggestion, amélioration, reprise, critique... est la bienvenue
Hors ligne
#2 Le 02/06/2006, à 14:34
- iuchiban
Re : script de nettoyage slantNET
Mais des "clear" un peu partout.
Genre :
- début du script
else
clear
cowsay -e @@ -f sodomized Mauvaise option\ \!\!
enfin, ça permet de pas faire défiler le terminal à chaque action.
C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.
Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.
Hors ligne
Pages : 1