Bonjour,
Je pense que le script est assez évolué pour sortir de la "proposition de script" pour atterrir ici.
Voilà le but :
Construire un fichier texte d'après des extraits sous forme de fichiers dans un répertoire, au fur et à mesure de questions oui/non.
Franchement, c'est pour une lettre de motivation, elle est différente selon à qui je l'adresse, je mets des trucs en avant, d'autres moins, etc.
Le résultat est sous forme d'un conc.txt qu'il faut encore mettre en forme dans un traitement de texte.
Les limitations :
Les extraits sont sous forme de 1.txt, 2.txt, 3.txt, etc.
Je préfèrerais la forme "1 explication du contenu.txt", "2 un autre contenu.txt"
Bref, toujours un numéro mais avec des explications.
Les problème vient du test sur l’existence du fichier, et du "trop d'arguments" que vous connaissez bien.
Donc au lieu des if [ -e $indic*.txt ] je n'ai queif [ -e $indic.txt ]
Également, bon je n'arrive pas encore à insérer un saut de ligne entre les extraits concaténés dans conc.txt.
Ça doit être un truc tout con mais bon.
#!/bin/bash
clear
# On se place dans le bon répertoire
rep=/media/ericgbnew/Transcend/lettre_motivation/
cd $rep
indic=0
# Tant que c'est vrai !
while true; do
indic=$(($indic + 1))
# Si le fichier $indic*.txt n'existe pas --> exit
if [ -e $indic.txt ]; then
echo ""
echo "Le fichier $indic*.txt propose cet extrait :"
echo
cat $indic.txt
echo ""
else
echo "Le fichier $indic*.txt n'existe pas, fin du script."
exit
fi
# On pose la question...
read -p "Voulez vous ajouter cet extrait [oui/non] ? : " choix
case $choix in
# la réponse est oui...
oui )
cat $indic.txt>>conc.txt
clear
echo "Lettre de motivation en construction :"
echo "--------------------------------------"
echo
cat conc.txt
echo
echo "--------------------------------------";;
# la réponse est non...
non ) clear
echo "Lettre de motivation en construction :"
echo "--------------------------------------"
echo
cat conc.txt
echo
echo "--------------------------------------";;
# la réponse est autre...
* ) echo ""
clear
echo "Répondez oui ou non !"
indic=$(($indic - 1));;
esac
done