Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/12/2005, à 15: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... wink )"
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" ]; then

    echo "-----"
    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 wink

Hors ligne

#2 Le 02/06/2006, à 15: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