Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:sonn2 [Le 19/01/2012, 11:58]
sonn2 [Vos commentaires]
utilisateurs:sonn2 [Le 01/02/2012, 23:46] (Version actuelle)
sonn2
Ligne 1: Ligne 1:
-. 
-<​note>​Page en construction....</​note>​ 
 ====== ​ Présentation====== ====== ​ Présentation======
 ===== Présentation ===== ===== Présentation =====
Ligne 24: Ligne 22:
   * C (pour plus tard...)   * C (pour plus tard...)
 ==== Philosophie ==== ==== Philosophie ====
-J'ai quitter le monde propriétaire il y a plus d'​un ​an et je respire enfin :-P +J'ai quitter le monde propriétaire il y a plus de deux an et je respire enfin :-P 
-J'​adore l'​idée de pouvoir modifier mon système comme je le veux (même si pour le moment je me contente de peu...) mon savoir est trop faible à mon gout, mais heureusement j'ai la soif d'​apprendre :-D+J'​adore l'​idée de pouvoir modifier mon système comme je le veux (même si pour le moment je me contente de peu...) mon savoir est trop faible à mon goût, mais heureusement j'ai la soif d'​apprendre :-D
  
 ====== Projets ====== ====== Projets ======
 <note important>​ <note important>​
-Je fait cette page pour mettre des liens que je trouve les plus utiles, je posterais aussi mon petit script.+Je fait cette page pour mettre des liens que je trouve les plus utiles, je posterais aussi mon modeste ​script.
 C'est mes petits trucs à moi, rien de génial, mais bon... j'aime l'​idée de OpenSource et du Partage, alors si ça peut aider quelqu'​un d'​autre... C'est mes petits trucs à moi, rien de génial, mais bon... j'aime l'​idée de OpenSource et du Partage, alors si ça peut aider quelqu'​un d'​autre...
 </​note>​ </​note>​
 ===== gestionnaire de taches/​assistant de mon ordi en bash ===== ===== gestionnaire de taches/​assistant de mon ordi en bash =====
 ==== Introduction ==== ==== Introduction ====
-C'est un petit script qui permet ​d'effectuer d'​autres petits scripts contenu dans des fonctions, rien d'​extraordinaire,​ je commence depuis 3 jours le bash :p mais bon... comme j'ai pas trouver quelque chose de semblable.. je partage :) meme si c'est nul et que en l'​état ça sert pas à grand chose... ​mais c'est pas beuger ;) du moins j'ai pas vu.. +Contenu supprimé temporairement afin d'éviter ​de modifier sans cesse la page mais le projet continue sur le forum ;
-Donc s'il vous plait les habitués, venez pas dire que c'est nul, etc... parce que je le SAIT!! merci :) +Une discussion ​est ouverte sur le forum [[http://forum.ubuntu-fr.org/​viewtopic.php?id=787121|ici]] .
-Ce script necessite d'​ếtre "​installé",​ pour cela, creer un REPERTOIRE et placer dans celui-là les 4 fichiers dont les sources sont en dessous, et lancer ​le script ainsi +
-<​code>​ +
-sudo ./script.sh installation +
-</​code>​ +
- +
-<note tip> +
-  *version : 0.4 +
-  *dépendances : zenity (si lancement de cet environnement+
-  ​*Permet l'​exécution de 10 fonctions définies dans chaque environnement. +
-  *Nécessite les droits root. +
-  *Le mot de passe est : test +
-  *Peut etre lancer en console ou en graphique. +
-  * la possibilité de lancer directement une fonction passé en parametre (utile pour un cron par exemple) +
-</​note>​ +
-exemple de lancement : +
-<​code>​ +
-sudo ./script.sh terminal +
-ou +
-sudo ./script.sh zenity +
-</​code>​ +
- +
-A venir : +
-<note help> +
-  * <​del>​possible gestion des utilisateurs</​del>​ Abandonné car inutile... +
-  * une meuilleur ergonomie pour le menu terminal avec l'​utilisation de //​dialog//​ +
-  * un script de connexion ssh +
-  * un script de sauvegarde automatique de fichier +
-  * un script de rangement semi-automique de fichier +
-  * un script de restauration rapide de programmes préféré (utilise en cas de réinstallation de sa distribution) +
-  * un systeme de log (dont certaines lignes de commande sont déjà présentes ^^ ) +
-si vous avez d'​autres idées à me proposer n'​hésiter pas ;) +
-</​note>​ +
-==== code ==== +
-=== Le fichier "​script.sh"​ === +
-<​code>​ +
-#​!/​bin/​bash +
-clear +
- +
-#version 0.4 +
- +
-source "​config.sh"​ +
-source "​programmes.sh"​ +
-source "​fonctions.sh"​ +
- +
-echo " +
-"`date +%Y-%m-%d\;​%H:​%M:​%S` -- `logname` -- "​$lancement"​ >> $sortie_log +
-initialisation +
- +
-if `pwd` == "​$repertoire"​ ]  +
-then +
- if ((EUID == 0)) +
- then +
- #​possibilité n°1 +
- if -z "​$1"​ ] +
- then +
- echo `date +%Y-%m-%d\;​%H:​%M:​%S` -- `logname` -- "​$plm_m"​ >> $sortie_log +
- echo "​$plm_m"​ +
- zenity --error --title="​$plm_t"​ --text="​$plm_m"​ +
- exit 3 +
- +
- #​possibilité n°2 +
- elif [ "​$1"​ == "​terminal"​ ] +
- then +
- echo `date +%Y-%m-%d\;​%H:​%M:​%S` -- `logname` -- "​$l_m_1 $0 $l_m_2 $# $l_m_3 $1" >> $sortie_log +
- echo -e "​$l_m_1 $0 $l_m_2 $# $l_m_3 $1\n"​ +
- terminal_verification_mdp +
- echo "​$msg_bienvenue_m"​ +
- terminal_choisir_programme +
- +
- #​possibilité n°3 +
- elif [ "​$1"​ == "​zenity"​ ] +
- then +
- echo `date +%Y-%m-%d\;​%H:​%M:​%S` -- `logname` -- "​$l_m_1 $0 $l_m_2 $# $l_m_3 $1" >> $sortie_log +
- zenity --info ​ --title="​$l_t"​ --text="​$l_m_1 $0 $l_m_2 $# $l_m_3 $1" +
- zenity_verification_mdp +
- zenity --info --title="​$msg_bienvenue_t"​ --text="​$msg_bienvenue_m"​ +
- zenity_choisir_programme +
- +
- #​possibilité n°4 +
- else +
- for i in ${!noms_fonctions_terminal[*]} +
- do +
- if [ "​$1"​ == "​${noms_fonctions_terminal[i]}"​ ] +
- then +
- eval "​${noms_fonctions_terminal[i]}"​ +
- exit 9 +
- fi +
- done +
- +
- for i in ${!noms_fonctions_zenity[*]} +
- do +
- if [ "​$1"​ == "​${noms_fonctions_zenity[i]}"​ ] +
- then +
- eval "​${noms_fonctions_zenity[i]}"​ +
- exit 9 +
- fi +
- done +
- +
- if [ "​$1"​ == "​installation"​ ] +
- then +
- installation +
- exit 9 +
- fi +
- +
- #si on n'as pas déjà quitter, c'est que la fonction n'​existe pas, donc on affiche une erreur +
- clear +
- echo "​$pli_m"​ +
- zenity --error --title="​$pli_t"​ --text="​$pli_m"​ +
- exit 4 +
- fi +
- else +
- clear +
- echo "​$root_manquant_m"​ +
- zenity --error --title="​$root_manquant_t"​ --text="​$root_manquant_m"​  +
- exit 2 +
- fi +
-else +
- clear +
- echo "​$install_non_m"​ +
- zenity --error --title="​$install_non_t"​ --text="​$install_non_m"​  +
- exit 1 +
-fi +
- +
-exit +
- +
-# 1 = lancer sans être installé +
-# 2 = lancer sans root +
-# 3 = lancer sans parametre +
-# 4 = lancer avec un parametre d'​environnement incorrect +
- +
-# 5 = trop d'​erreurs de mdp dans l'​environnement terminal +
-# 6 = fin normal de la session d'​environnement terminal +
- +
-# 7 = trop d'​erreurs de mdp dans l'​environnement zenity +
-# 8 = fin normal de la session d'​environnement zenity +
- +
-# 9 = fin normal de la session sans environnement +
-</​code>​ +
- +
-=== Le fichier "​config.sh"​ === +
-<​code>​ +
-#​!/​bin/​bash +
- +
-#variables supplémentaires utilisées : +
-# mdp +
-# afficher_message +
-# quitter +
- +
-# définition des variables +
-+
- +
-repertoire="/​gestionnaire_de_tache"​ +
-sortie_log="​log.gdt"​ +
-let "​nb_essai_restant = 3" +
-s_mdp="​test"​ +
-ner="​Nombre d'​essai restant :" +
- +
-#lancement message +
-l_t=""​ +
-l_m_1="​Vous avez lancé"​ #$0 +
-l_m_2="​avec"​ #$# +
-l_m_3="​paramètres dans l'​environnement " +
-#fin lancement message +
- +
-lancement="​Lancement du script..."​ +
- +
-install_non_t="​Erreur fatale!"​ +
-install_non_m="​Le script n'est pas installé!"​ +
- +
-root_manquant_t="​Erreur fatale!"​ +
-root_manquant_m="​Ce script nécessite d'etre lancé en tant que root!"​ +
- +
-+
- +
-plm_t="​Erreur fatale!"​ +
-plm_m="​Paramètre de lancement manquant!"​ +
- +
-pli_t="​Erreur fatale!"​ +
-pli_m="​Paramètre de lancement incorrect!"​ +
- +
-entrer_mdp_t="​Informations requises"​ +
-entrer_mdp_m="​Entrez votre mot de passe:"​ +
- +
-mdp_vide_t="​Erreur!"​ +
-mdp_vide_m="​Votre mot de passe est vide!"​ +
- +
-mdp_incorrect_t="​Erreur!"​ +
-mdp_incorrect_m="​Votre mot de passe est incorrect!"​ +
- +
-mdp_erreur_t="​Erreur fatale!"​ +
-mdp_erreur_m="​Vous avez fait trop d'​erreurs pour le mot de passe!"​ +
- +
-msg_bienvenue_t="​Bienvenue!"​ +
-msg_bienvenue_m="​Bienvenue!"​ +
- +
-entrer_choix_t="​Informations requises"​ +
-entrer_choix_m="​Entrez votre choix :" +
- +
-choix_vide_t="​Erreur!"​ +
-choix_vide_m="​Votre choix est vide!"​ +
- +
-choix_incorrect_l="​Erreur!"​ +
-choix_incorrect_m="​Choix incorrect !" +
- +
-fenetre_fermee_t="​Erreur!"​ +
-fenetre_fermee_m="​Fenetre fermée sans entrer les informations nécessaires!"​ +
- +
-+
-# fin définition des variables +
-</​code>​ +
- +
-=== Le fichier "​programmes.sh"​ === +
-<​code>​ +
-#​!/​bin/​bash +
- +
-#​définitions des array +
-+
- +
-noms_fonctions_terminal=( +
- ''​ +
- '​terminal_01'​ +
- '​terminal_02'​ +
- '​terminal_03'​ +
- '​terminal_04'​ +
- '​terminal_05'​ +
- '​terminal_06'​ +
- '​terminal_07'​ +
- '​terminal_08'​ +
- '​terminal_09'​ +
- '​terminal_10'​ +
-+
-descriptions_fonctions_terminal=( +
- ''​ +
- '​Obtenir la liste des commandes les plus utiles'​ +
- '​Mettre à jour votre cache de paquets et vos paquets'​ +
- '​Obtenir la liste des utilisateurs de la machine courante'​ +
- '​Chiffrer une variable en sha1'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
-+
-noms_fonctions_zenity=( +
- ''​ +
- '​zenity_01'​ +
- '​zenity_02'​ +
- '​zenity_03'​ +
- '​zenity_04'​ +
- '​zenity_05'​ +
- '​zenity_06'​ +
- '​zenity_07'​ +
- '​zenity_08'​ +
- '​zenity_09'​ +
- '​zenity_10'​ +
-+
-descriptions_fonctions_zenity=( +
- ''​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
- '​vide'​ +
-+
- +
- +
-+
-#fin des définitions des array +
- +
-# définition des fonctions terminal +
-+
-function terminal_01 +
-+
- echo "Pour obtenir une liste des commandes les plus utiles :" +
- echo "http://doc.ubuntu-fr.org/​commande_shell"​ +
-+
-function terminal_02 +
-+
- apt-get update +
- apt-get upgrade +
-+
-function terminal_03 +
-+
- n=1 # Nombre d'​utilisateurs +
- for nom in $(awk '​BEGIN{FS=":"​}{print $1}' < "/​etc/​passwd"​ ) +
- do +
- echo "​UTILISATEUR #$n = $nom"​ +
- let "n += 1" +
- done +
-+
-function terminal_04 +
-+
- read -p "​Entrez votre mot de passe:"​ -s var +
- read sha1 x < <​(sha1sum <<<​ "​$var"​) +
- echo -e "​\nVotre mdp en sha1 =" +
- echo $sha1 +
-+
-function terminal_05 +
-+
- dmidecode +
-+
-function terminal_06 +
-+
- echo "​fonction vide :p" +
-+
-function terminal_07 +
-+
- echo "​fonction vide :p" +
-+
-function terminal_08 +
-+
- echo "​fonction vide :p" +
-+
-function terminal_09 +
-+
- echo "​fonction vide :p" +
-+
-function terminal_10 +
-+
- echo "​fonction vide :p" +
-+
-+
-# fin définition des fonctions terminal +
- +
-# définition des fonctions zenity +
-+
-function zenity_01 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_02 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_03 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_04 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_05 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_06 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_07 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_09 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
-function zenity_10 +
-+
- zenity --info title="​Vide!"​ --text="​Vide!"​ +
-+
- +
-+
-# fin définition des fonctions zenity +
-</​code>​ +
- +
-=== le fichier "​fonctions.sh" === +
-<​code>​ +
-#​définitions des fonctions systèmes +
-+
- +
-function installation +
-+
- if [ -d $repertoire ] +
- then +
- read -p "Le répertoire $repertoire existe déjà, il seras effacer"​ +
- sudo rm -r $repertoire +
- fi +
- sudo mkdir $repertoire +
- sudo mv *.* $repertoire +
- sudo rm -r `pwd` +
- chown -R root:root $repertoire +
- chmod -R 000 $repertoire +
-+
- +
-function initialisation +
-+
- menu_terminal="​Menu de : ${#​noms_fonctions_terminal[*]} programmes\n"​ +
- for i in ${!noms_fonctions_terminal[*]} +
- do +
- menu_terminal+="​$i => ${descriptions_fonctions_terminal[i]} \n" +
- done +
-+
- +
-#​définitions des fonctions de l'​environnement terminal +
-+
- +
-function terminal_verification_mdp +
-+
- while true +
- do +
- read -p "​$entrer_mdp_m"​ -s mdp +
- echo +
- +
- #si le mdp entré est vide +
- if [ -z "​$mdp"​ ] +
- then +
- echo "​$mdp_vide_m"​ +
- +
- #si le mdp entré est incorrect +
- elif [ -n "​$mdp"​ ]&&​[ "​$mdp"​ != "​$s_mdp"​ ] +
- then +
- echo "​$mdp_incorrect_m"​ +
- +
- #si le mdp est correct +
- elif [ -n "​$mdp"​ ]&&​[ "​$mdp"​ == "​$s_mdp"​ ] +
- then +
- break +
- fi +
- +
- let "​nb_essai_restant = nb_essai_restant-1"​ +
- echo "$ner $nb_essai_restant"​ +
- +
- #si le nombre d'​essai restant est inférieur ou égal à 0 +
- if [ "​$nb_essai_restant"​ -le 0 ] +
- then +
- clear +
- echo "​$mdp_erreur_m"​ +
- exit 5 +
- fi +
- +
- echo +
- done +
-+
- +
-function terminal_choisir_programme +
-+
- while true +
- do +
- echo -e "​$menu_terminal";​ afficher_message=false +
- read -p "​$entrer_choix_m"​ choix +
- +
- if [ -z "​$choix"​ ] +
- then +
- echo -e "​$choix_vide_m"​ +
- else +
- case "​$choix"​ in +
- "​1"​) eval ${noms_fonctions_terminal[1]} ;​afficher_message=true;​ ;; +
- "​2"​) eval ${noms_fonctions_terminal[2]} ;​afficher_message=true;​ ;; +
- "​3"​) eval ${noms_fonctions_terminal[3]} ;​afficher_message=true;​ ;; +
- "​4"​) eval ${noms_fonctions_terminal[4]} ;​afficher_message=true;​ ;; +
- "​5"​) eval ${noms_fonctions_terminal[5]} ;​afficher_message=true;​ ;; +
- "​6"​) eval ${noms_fonctions_terminal[6]} ;​afficher_message=true;​ ;; +
- "​7"​) eval ${noms_fonctions_terminal[7]} ;​afficher_message=true;​ ;; +
- "​8"​) eval ${noms_fonctions_terminal[8]} ;​afficher_message=true;​ ;; +
- "​9"​) eval ${noms_fonctions_terminal[9]} ;​afficher_message=true;​ ;; +
- "​10"​)eval ${noms_fonctions_terminal[10]};​afficher_message=true;​ ;; +
- *) ​  echo -e "​$choix_incorrect_m";​ ;; +
- esac +
- fi +
- if [ "​$afficher_message"​ == true ] +
- then +
- terminal_message_quitter +
- fi +
- done +
-+
- +
-function terminal_message_quitter +
-+
- while true +
- do +
- read -p "​Voulez-vous continuer ​?[o/n]" quitter +
- if [ -z $quitter ] +
- then +
- echo  +
- elif [ $quitter ​== "​o"​ ]||[ $quitter == "​O" ​]||[ $quitter == "​y" ​]||[ $quitter == "​Y"​ ] +
- then +
- break +
- elif [ $quitter == "​n"​ ]||[ $quitter == "​N"​ ] +
- then +
- clear +
- echo "Au revoir!"​ +
- exit 6 +
- fi +
- done +
-+
- +
-+
-#fin définitions des fonctions de l'​environnement terminal +
- +
- +
-#​définitions des fonctions de l'​environnement zenity +
-+
-function zenity_verification_mdp +
-+
- while true +
- do +
- if mdp=`zenity --entry --title="​$entrer_mdp_t"​ --text="​$entrer_mdp_m \n $ner $nb_essai_restant"​ --hide-text` +
- then +
- #si le mdp entré est vide +
- if [ -z "​$mdp"​ ] +
- then +
- zenity --error --title="​$mdp_vide_t"​ --text="​$mdp_vide_m"​ +
- +
- #si le mdp entré est incorrect +
- elif [ -n "​$mdp"​ ]&&​[ "​$mdp"​ != "​$s_mdp"​ ] +
- then +
- zenity --error --title="​$mdp_incorrect_t"​ --text="​$mdp_incorrect_m"​ +
- +
- #si le mdp est correct +
- elif [ -n "​$mdp"​ ]&&​[ "​$mdp"​ == "​$s_mdp"​ ] +
- then +
- break +
- fi +
- else +
- zenity --error --title="​$fenetre_fermee_t"​ --text="​$fenetre_fermee_m"​ +
- fi +
- +
- let "​nb_essai_restant = nb_essai_restant-1"​ +
- +
- #si le nombre d'​essai restant est inférieur ou égal à 0 +
- if [ "​$nb_essai_restant"​ -le 0 ] +
- then +
- zenity --error --title="​$mdp_erreur_t"​ --text="​$mdp_erreur_m"​ +
- exit 7 +
- fi +
- done +
-+
- +
-function zenity_choisir_programme +
-+
- while true +
- do +
- choix=`zenity --list --title="​$entrer_choix_t"​ --text="​$entrer_choix_m"​ --column="​N°"​ --column="​Programmes"​ \ +
- 1 "​${descriptions_fonctions_zenity[1]}"​ 2 "​${descriptions_fonctions_zenity[2]}"​ 3 "​${descriptions_fonctions_zenity[3]}"​ \ +
- 4 "​${descriptions_fonctions_zenity[4]}"​ 5 "​${descriptions_fonctions_zenity[5]}"​ 6 "​${descriptions_fonctions_zenity[6]}"​ \ +
- 7 "​${descriptions_fonctions_zenity[7]}"​ 8 "​${descriptions_fonctions_zenity[8]}"​ 9 "​${descriptions_fonctions_zenity[9]}"​ \ +
- 10 "​${descriptions_fonctions_zenity[10]}"​ ` +
- afficher_message=false +
- +
- if [ -z "​$choix"​ ] +
- then +
- echo -e "​$choix_vide_m"​ +
- else +
- case "​$choix"​ in +
- "​1"​) eval ${noms_fonctions_zenity[1]} ;​afficher_message=true;​ ;; +
- "​2"​) eval ${noms_fonctions_zenity[2]} ;​afficher_message=true;​ ;; +
- "​3"​) eval ${noms_fonctions_zenity[3]} ;​afficher_message=true;​ ;; +
- "​4"​) eval ${noms_fonctions_zenity[4]} ;​afficher_message=true;​ ;; +
- "​5"​) eval ${noms_fonctions_zenity[5]} ;​afficher_message=true;​ ;; +
- "​6"​) eval ${noms_fonctions_zenity[6]} ;​afficher_message=true;​ ;; +
- "​7"​) eval ${noms_fonctions_zenity[7]} ;​afficher_message=true;​ ;; +
- "​8"​) eval ${noms_fonctions_zenity[8]} ;​afficher_message=true;​ ;; +
- "​9"​) eval ${noms_fonctions_zenity[9]} ;​afficher_message=true;​ ;; +
- "​10"​)eval ${noms_fonctions_zenity[10]};​afficher_message=true;​ ;; +
- *) ​  echo -e "​$choix_incorrect_m";​ ;; +
- esac +
- fi +
- +
- if [ "​$afficher_message"​ == true ] +
- then +
- zenity_message_quitter +
- fi +
- done +
-+
- +
-function zenity_message_quitter +
-+
- while true +
- do +
- zenity --question --title "que faire" --text "​Voulez-vous continuer ?​[o/​n]"​ +
- if [ $? == 0 ] +
- then +
- break +
- else +
- zenity --info --title="​au revoir"​ --text="​au revoir"​ +
- exit 8 +
- fi +
- done +
-+
- +
-+
-#fin définitions des fonctions de l'​environnement zenity +
-</​code>​ +
 ==== message xD ==== ==== message xD ====
 <​note>​ <​note>​
Ligne 641: Ligne 47:
  
 ---- ----
---- //​[[:​utilisateurs:​sonn2|sonn2]] Le 19/​01/​2012, ​11:57// DELETEME 8-O LOL+--- //​[[:​utilisateurs:​sonn2|sonn2]] Le 31/​01/​2012, ​17:24// DELETEME 8-O LOL
  • utilisateurs/sonn2.1326970697.txt.gz
  • Dernière modification: Le 19/01/2012, 11:58
  • par sonn2