#1 Le 02/04/2014, à 18:56
- kurapika29
[Pas solve mais contourné] Souci avec sed ou erreur de ma part
Bonjour à vous,
je viens vous exposer un problème apparu depuis xubuntu 13.10 que je n'arrive pas à régler.
Je me suis fais un script tout bête qui fonctionnais depuis pas mal de temps et qui depuis cette mise à niveau me pose une colle que je ne comprend pas car mon script fonctionne en 13.04 et moins.
Le soucis viens de cette commande :
CHOIX=$(ls -d */ | sed "s#/## ; 1i\Nouveau" | zenity --list --title "Mangas update" --text "Que voulez-vous mettre à jour ?" --column="Choix")
Pour vous mettre un peu plus de précision, j'ai un dossier Mangas dans lequel j'ai deux sous dossier "Animé, Scan" cette commande me sert juste à attrapé cette variable.
Mais elle ressort comme ça
Animé | Animé
Si vous pouvez m'éclairer du pourquoi et du comment
Et au cas où j'vous mets le script entier
#!/bin/bash
#Se placer dans le dossier mangas
mkdir -p ~/Mangas
#Un compteur pour relancer le script à la fin sur demande
COUNTER=0
while [ "$COUNTER" -ne "1" ]; do
#Choix de la catégorie
cd ~/Mangas
if [ "$(ls -d */)" ]; then
CHOIX=$(ls -d */ | sed "s#/## ; 1i\Nouveau" | zenity --list --title "Mangas update" --text "Que voulez-vous mettre à jour ?" --column="Choix") || exit
else
CHOIX=$(zenity --list --title "Mangas update" --text "Que voulez-vous mettre à jour ?" --column="Choix" "Nouveau") || exit
fi
if [ "${CHOIX}" = "Nouveau" ]; then
CHOIX=$(zenity --entry --title "Mangas Update" --text "Quel catégorie voulez-vous ajouter ?" --entry-text "catégorie") || exit
fi
mkdir -p ~/Mangas/"$CHOIX"
cd ~/Mangas/"$CHOIX"
COUNTER2=0
while [ "$COUNTER2" -ne "1" ]; do
#Quelle CHOIX mettre à jour ?
if [ "$(ls)" ]; then
DEP1=$(ls *.txt | sed "s/\.txt// ; 1i\Nouveau" | zenity --height=300 --list --title "Mangas Update" --text "Quel $CHOIX voulez-vous mettre à jour ?" --column="$CHOIX" ) || exit
else
DEP1=$(zenity --height=300 --list --title "Mangas Update" --text "Quel $CHOIX voulez-vous mettre à jour ?" --column="$CHOIX" "Nouveau" ) || exit
fi
#Si Nouveau séléctionné demander nom du Choix
if [ "${DEP1}" = "Nouveau" ]; then
EPISODE=1
DEP1=$(zenity --entry --title "Mangas Update" --text "Quel $CHOIX voulez-vous ajouter ?" --entry-text "$CHOIX") || exit
else
EPISODE=$(( $(awk '{print $NF}' "${DEP1}".txt) + 1 ))
fi
#Quel episode ?
DEP2=$(zenity --entry --title "Mangas Update" --text "Quel est le numero du dernier ${CHOIX} de ${DEP1} que vous ayez vu ?" --entry-text "${EPISODE}") || exit
#Creer le fichier texte
echo "- ${DEP1} ${DEP2}" > ~/Mangas/"$CHOIX"/"${DEP1}".txt
cat ~/Mangas/"$CHOIX"/*.txt > ~/Mangas/"$CHOIX"/"$CHOIX".lst
#Notificaton
notify-send "${DEP1}" "${CHOIX} mis à jour" -i $HOME/Mangas/mangas_update.png
#relancer sur le même $CHOIX
zenity --question --title "Mangas Update" --text "Voulez-vous mettre à jour un autre ${CHOIX} ?" --ok-label="Oui" --cancel-label="non"
if [ $? = "1" ]; then
COUNTER2=1
#relancer ou quitter
zenity --question --title "Mangas Update" --text "Voulez-vous faire une autre mise à jour ?" --ok-label="Oui" --cancel-label="Quitter" || exit
if [ $? = "1" ]; then
COUNTER=1
fi
fi
done
done
Je suis conscient qu'il peut être améliorer mais il me suffit comme ça quand il fonctionne
Dernière modification par kurapika29 (Le 02/04/2014, à 21:36)
Disponible sur IRC, sur le serveur irc.freenode.net salon ##ubuntu-voyager (et aussi sur plein d'autre serveur/salon)
Venez si vous avec besoin d'aide ou pour causer ;) suffit d'avoir Xchat ou un autre client IRC
Où sinon en cliquant sur se lien http://kiwiirc.com/client/irc.freenode. … tu-voyager
Hors ligne
#2 Le 02/04/2014, à 21:02
- tiramiseb
Re : [Pas solve mais contourné] Souci avec sed ou erreur de ma part
Salut,
C'est Zenity qui fait ce formatage, en doublant le nom et avec le pipe au milieu.
Ça semble être un bug : https://bugs.launchpad.net/ubuntu/+sour … ug/1247137
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 02/04/2014, à 21:36
- kurapika29
Re : [Pas solve mais contourné] Souci avec sed ou erreur de ma part
Bon je suis pas fou alors, ça me rassure
Du coup le cut remet de l'ordre dans tout ça.
Merci bien
Disponible sur IRC, sur le serveur irc.freenode.net salon ##ubuntu-voyager (et aussi sur plein d'autre serveur/salon)
Venez si vous avec besoin d'aide ou pour causer ;) suffit d'avoir Xchat ou un autre client IRC
Où sinon en cliquant sur se lien http://kiwiirc.com/client/irc.freenode. … tu-voyager
Hors ligne