#1 Le 07/07/2008, à 17:04
- n3o51
Projet doc hors ligne Aide memoire bash
Bonjour à tous,
débutant en script shell, je souhaiterais développer, pour m'entrainer, un script permettant d'épauler les débutants en script shell.
Il pourrait par exemple permettre de naviguer via une doc hors-ligne (composée de divers docs et tutos libres disponibles sur le net).
Il offrirait également un mémo de toutes les infos q'on peut rechercher régulièrement (nom des variable, recapitulatif des boucles et tests existant(e)s ...)
Le but étant de rassembler un maximun d'infos incontournables pour les débutants, dans une doc bien indexée afin que l'on puisse trouver rapidement une réponse aux questions les plus basiques.
Donc, si certains d'entre vous veulent participer au projet, faire une suggestion ou proposer leurs sites préférés pour se former au scripts, ils sont les bienvenus.
Dernière modification par n3o51 (Le 07/07/2008, à 17:05)
Welcome to the real world
________________________________
Hors ligne
#2 Le 08/07/2008, à 03:16
- n3o51
Re : Projet doc hors ligne Aide memoire bash
Bonjour a tous !!!!
J'ai donc un premier jet
#!/bin/bash
### Etude de BA$H
#### Introduction a bAsh
####===============================================#####
#### Ce script ce charge d'être votre memo en bash #####
####===============================================#####
# zenity --info --text "Info de http://aral.iut-rodez.fr/fr/sanchis/enseignement/bash/ar01s01.html#id449200
# La fonction ACCUEIL nous permettra de lister le menu de la table des matiéres
confrep="/home/$USER/.BAsH.conf"
#La fonction MISEAJOUR
function MISEAJOUR {
cd "$confrep/Pages_MAN"
wget "ftp://88.191.23.236/Pages_MAN/*" --no-check-certificate
}
# La fonction CREATE (Définition d'un dossier "$confrep" )
function CREATE {
mkdir "$confrep"
}
function sorti {
if [ "$?" != "0" ] ; then
zenity --info --title="$0" --text="Action annulée par l'utilisateur." ; exit 1
fi
}
function quit_script {
if [ "$?" != "0" ] ; then
zenity --info --title="$0" --text="Action annulée par l'utilisateur, fin du script." ; exit 1
fi
}
function retour_menu {
if [ $? != 0 ] ; then
zenity --error --title="Warning" \
--text="Vous n'avez rien selectionné \nRetour au menu !!!" ; MENU
fi
}
function MAN {
MAN=$(zenity --entry --text "Quels pages man souhaitez vous consulter") && echo "$MAN" >$confrep/Man
DIR="$confrep/Pages_MAN"
cat $DIR/$MAN.odt | zenity --text-info --title='$MAN' --width=800 --height=600
if [ "${PIPESTATUS[0]}" != "0" ] ; then
zenity --error --title="Une erreur est survenue" --text="Aucun nom n'as étè entré"
fi
}
function ACCUEIL {
while true ; do
ACT=$(zenity --list --checklist --width=400 --height=350 --title "Auto_install by N3o" --text="Veuillez sélectionnez les informations demandés:" \
--column="Selection" --column="" --column="Categories" --hide-column=2 \
FALSE MAN "Rechercher des pages MAN" \
FALSE MEM "Aide-mémoire des commandes Linux" \
FALSE NOT "Ajouter vos propres notes avec Pense-bêtes" \
FALSE DOC "Consulter la Doc "
FALSE EXE "Faire un exercice !!!")
case $ACT in
MAN)
MAN
break
;;
esac
done
}
function PREFACE {
while true ; do
PRE=$(zenity --list --checklist --width=400 --height=350 --title "ETUDE DE BASH" --text="Veuillez sélectionnez les informations demandés:" \
--column="Selection" --column="" --column="Categories" --hide-column=2 \
FALSE ACCU "Accueil" \
FALSE MISE "Mise a jour" \
FALSE APRO "A propos" )
if [ $? != 0 ] ; then
zenity --info --title="Fin du script !" --text="Merci d'avoir utilisé ce script. \n
Bonne journée ! \n
N3o"
exit 0
fi
case $PRE in
ACCU)
ACCUEIL
;;
MISE)
MISEAJOUR
;;
esac
done
}
#Définitions des vari@bles
function MENU {
while true ; do
PREFACE
if [ $? != 0 ] ; then
zenity --info --title="Fin du script !" --text="Merci d'avoir utilisé ce script. \n
Bonne journée ! \n
N3o"
exit 0
fi
case $ACT in
MAN)
MAN
break
;;
MEM)
esac
done
}
### Le lancement du Menu
if [ -d "$confrep" ] ; then
if [ -f "$confrep/Man" ] ; then
# Je lance la Fonction MENU
MENU
else
# Je lance la fonction CREATE
CREATE && MENU
fi
else
# Je créer le repertoire de configuration de ce script
mkdir "$confrep"
# Je lance la fonction CREATE
CREATE && MENU
fi
Par contre j'ai un petit soucis avec la fonction MAN
function MAN {
MAN=$(zenity --entry --text "Quels pages man souhaitez vous consulter") && echo "$MAN" >$confrep/Man
DIR="$confrep/Pages_MAN"
cat $DIR/$MAN.odt | zenity --text-info --title='$MAN' --width=800 --height=600
if [ "${PIPESTATUS[0]}" != "0" ] ; then
zenity --error --title="Une erreur est survenue" --text="Aucun nom n'as étè entré"
fi
}
Si j'enleve le .odt
cat $DIR/$MAN.odt
'ai pas le probleme avec les
(zenity:11716): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion `g_utf8_validate (text, len, NULL)' failed
Mais n'est-il vraiment pas possible de mettre en page un fichiers lus ??
Mettre en page de cette maniére :
zenity --info --text "
<span font-family=\"Arial\">essai de polices</span>
<span font-family=\"sans-serif\">essai de polices</span>
<span font-family=\"Helvetica\">essai de polices</span>
<span font-family=\"impact\">essai de polices</span>
<span font-family=\"sans\">essai de polices</span>
<span font-family=\"webdings\">essai de polices</span>
"
zenity --info --text "
<span color=\"red\">red</span>
<span color=\"green\">green</span>
<span color=\"blue\">blue</span>
<span color=\"yellow\">yellow</span>
<span color=\"magenta\">magenta</span>
<span color=\"white\">white</span>
<span color=\"black\">black</span>
<span color=\"gray\">gray</span>
<span color=\"lightblue\">lightblue</span>
<span color=\"lightgray\">lightgray</span>
<b><big>ETC...</big></b>
"
zenity --info --text "
<b>style</b>
<big>style</big>
<i>style</i>
<s>style</s>
<sub>style</sub>
<sup>style</sup>
<small>style</small>
<tt>style</tt>
<u>style</u>
"
En attente de vos reponses Merci d'avance...
Dernière modification par n3o51 (Le 08/07/2008, à 03:17)
Welcome to the real world
________________________________
Hors ligne