« Auto-éditer un wikilivre/Auto-référencer/INSTALLER.sh » : différence entre les versions
Contenu supprimé Contenu ajouté
m WL:RD : ! mise en page, * diverses retouches |
WL:RD : * diverses retouches, ! mise en page |
||
Ligne 2 :
#! /bin/bash
#P Fichier : INSTALLER.sh
#P Syntaxe :
#P Exemple : './INSTALLER.sh
#P ou :
#P
#P créé le : 25 mai 2020 par l'utilisateur wikilivres Goelette Cardabela.
#P modifié : le 2 juin 2020 pour ajouter la commande de copie dans le
#P répertoire de l'utilisateur.
#P modifié : le mercredi 3 juin 2020 par GC pour corriger la syntaxe de la
#P ligne de commande
#P modifié : le 4 juin 2020 Correction d'un défaut de filtrage qui supprime le
#P caractère '\' devant '033[' code de couleur pour les lignes
#P d'affichage. ligne 306 dans la version du 4 juin 2020.
#P
#P Ce fichier exécutable
#P
#P Le fichier de liste contenant les liens vers les fichiers à télécharger est
#P censé
#P
#O Vider l'écran. (Clear screen)
Ligne 18 ⟶ 26 :
#P Pour les traductions '. gettext.sh' en tête du fichier.
#P . gettext.sh
#P Créer la fonction d'affichage 'syntaxe'.
function put_syntax #P peut-être à revoir ...
{
echo "$(gettext ' Syntaxe : ')"
echo "$(gettext ' INSTALLER.sh [ liste | pour moi | pour tous | pour admin ] ')"
echo "$(gettext ' Exemples dans le répertoire d installation : ~/tmp ')"
echo "$(gettext ' -> example ./INSTALLER.sh annexer.list, pour télécharger les articles depuis wikilivres. ')"
echo "$(gettext ' -> example ./INSTALLER.sh pour moi, pour copier les codes dans ~/Annexer. ')"
echo ""
exit 0
}
#P Créer la fonction 'Nettoyage des répertoires' avec l'autorisation de l'utilisateur.
function make_clean
{
#O Afficher ATTENTION suppression du contenu du répertoire ~/tmp en rouge clignotant.
echo -e "\033[5;31m ATTENTION ! Suppression du contenu du répertoire ~/tmp \033[0m "
#O Afficher " Ctrl-C pour quitter."
echo ""
echo " Ctrl-C pour quitter."
#O Attendre 'un' (un seul) caractère de réponse.
read -n1 -p -s Inkey
echo "Inkey = "$Inkey
rm -f ~/tmp/*.tmp; rm -f ~/tmp/*.txt; rm -f ~/tmp/temp/*.tmp; rm -f ~/tmp/temp/*.txt; rm -f ~/tmp/temp/*.sh;▼
}
#O Si le premier paramètre de la ligne de commandes commence par ''pour''
Ligne 28 ⟶ 64 :
then
{
echo -n "Cette option de tests 'pour moi' doit copier tous les fichiers dans
echo "répertoire 'Annexer', sous le répertoire if test -w ~/Annexer; then echo -e "\033[5;33m Le répertoire 'Annexer' pré-existe, il doit être supprimé ou renommé. \033[0m "; exit -1; fi
mkdir ~/Annexer ~/Annexer/bin; cp ~/tmp/bin/* ~/Annexer/bin/.; chmod 755 ~/Annexer/bin/*
ln -s -v ~/Annexer/bin/annexer ~/Annexer/annexer
mkdir ~/Annexer/src; cp ~/tmp/src/* ~/Annexer/src/.
mkdir ~/Annexer/doc; cp -R ~/tmp/doc/* ~/Annexer/doc/.
echo "
exit 0
}
Ligne 41 ⟶ 79 :
then
{
echo "Version française."
echo "Cette option 'pour tous' n'est pas encore en service." # copie les fichiers dans les répertoires :"
#w echo " /usr/local/bin "
#w echo " /usr/local/src/annexer/*.sh "
#w mkdir /usr/local/src/annexer; cp ~/tmp/src/*.sh /usr/local/src/annexer/.
#w echo " /usr/local/src/doc/annexer/*.sh/* "
#w mkdir /usr/local/src/doc/annexer; cp -R ~/tmp/doc/* /usr/local/src/doc/annexer/.
#w echo " /usr/local/share/doc/annexer/copyright, README"
#w echo " /usr/local/share/man/man1/annex.1.gz"
#w echo " /usr/local/share/man/fr/man1/annex.1.gz"
#w echo " /usr/local/share/man/es/man1/annex.1.gz"
make_clean
exit 0
}
Ligne 50 ⟶ 100 :
{
echo "Cette option 'pour administrateurs' n'est pas encore en service."
make_clean
exit 0
}
Ligne 65 ⟶ 116 :
#O et quitter avec un retour à -1
if ! test $1; then echo "Syntaxe : $0 [ liste | pour moi | pour tous | pour admin ]"; exit -1; fi
#P Version internationalisée: if ! test $1; then put_syntax; fi
#O Si le premier paramètre de la ligne de commandes commence par ''pour''
Ligne 249 ⟶ 301 :
#O Tant que l'on peut lire des lignes du fichier de liste Destfile.txt
#O (qui est un fichier téléchargé du serveur wikibooks)
#P sed /\\/\\\\/g pour éviter que le caractère '\' soit supprimé
#P par html_data_conversion.
while read txt
do
echo $txt | sed -f $Datadir/html_data_conversions | sed "s/033\[/\\\033\[/g" >> $Destdir/temp/$Destfile
cat $Destdir/temp/$Destfile | grep -v "div" | sed s/\'\'//g | sed s/\'#!/#!/g | sed '/^$/d' > $Destdir/src/$Destfile
done < "$Destfile.txt"
Ligne 284 ⟶ 338 :
#O Fin du tq shell.prj
done < $Datadir/shell.prj
#O Supprimer tous les fichiers intermédiares *.txt du répertoire tmp
rm *.txt
#O
put_syntax
▲ rm -f ~/tmp/*.tmp; rm -f ~/tmp/*.txt; rm -f ~/tmp/temp/*.tmp; rm -f ~/tmp/temp/*.txt; rm -f ~/tmp/temp/*.sh;
</syntaxhighlight>
{{AutoCat}}
|