#1 Le 13/09/2011, à 22:38
- L'Africain
Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Bonjour,
J'ai converti les dictionnaires Blg de Babylon pour stardict mais le dico englais-français lorsque que veux enlever les caractères bizarres avec la commande : sed 's|\$[0-9][0-9]*\$\t|\t|' Babylon_English_French.dic Babylon_English_French_nouveau.dic, l'opération se déroule bien mais à la fin il n'y a pas de Eng French nouveau, le terminal répond : sed: impossible de lire Babylon_English_French_nouveau.dic: Aucun fichier ou dossier de ce type
J'ai aussi essayé d'en créer un nouveau avec ce nom, il reste vide.
Merci si quelqu'un a déjà eu ce problème, ou s'il connait un moyen de le télécharger bien propre je suis preneur.
Merci
Dernière modification par L'Africain (Le 20/09/2011, à 15:45)
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne
#2 Le 14/09/2011, à 18:47
- aduxas
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Tu dois exécuter ta commande sed dans un répertoire autre que celui ou tu as mis ton fichier d'entrée. Ceci le confirmera:
ls -l Babylon_English_French_nouveau.dic
A part cela,
\$[0-9][0-9]*
se simplifie
\$[0-9]\+
Hors ligne
#3 Le 15/09/2011, à 14:28
- L'Africain
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Meci Aduxas, j'ai fait, en me plaçant d'abord dans mon bureau :
sed 's|\$[0-9][0-9]*\$\t|\t|' Babylon_English_French.dic /home/Babylon_English_French_nouveau.dic
Puis en restant dans ###### :
-laptop:~$ sed 's|\$[0-9][0-9]*\$\t|\t|' /home/######/Bureau/Babylon_English_French.dic /home/Babylon_English_French_nouveau.dic
Même réponse :
sed: impossible de lire /home/Babylon_English_French_nouveau.dic: Aucun fichier ou dossier de ce type
Peut-être ai-je mal compris ce que tu dis par exécuter sed en dehors du fichier d'entrée, si c'est le cas peut tu me donner un exemple ?
Merci pour ton aide
ls -l Babylon_English_French_nouveau.dic, ne donne rien :
ls: impossible d'accéder à Babylon_English_French_nouveau.dic: Aucun fichier ou dossier de ce type
Dernière modification par L'Africain (Le 15/09/2011, à 15:07)
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne
#4 Le 15/09/2011, à 15:18
- aduxas
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Je pense que dans ta première commande, tu laisse défiler les sorties à l'écran; dans la deuxième, tu essaye de les rediriger dans un nouveau fichier. Ca ne marche pas pour deux raisons:
1. Pour rediriger les sorties de sed, il faut utiliser sed ... > fichier. Tel quel, sed essaye d'appliquer la commande à deux fichiers, le premier est bon, le 2ème n'existe pas, dont le message d'erreur.
2. Tu n'as pas le droit d'écrire dans /home (sauf /home/######). Donc, même avec > devant le 2ème fichier, il y aura une erreur. Essaye écrire dans un fichier dans ton home ou, si tout marche comme tu veux, écrase le fichier d'entrée en utilisant sed -i
Dernière modification par aduxas (Le 15/09/2011, à 15:19)
Hors ligne
#5 Le 18/09/2011, à 08:40
- L'Africain
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
J'ai fait ça en créant le dernier fichier :
######@######-laptop:~$ sed 's|\$[0-9]\+\$\t|\t|' '/home/######/Bureau/Babylon_English_French.dic' /home/######/Babylon_English_French_nouveau.dic
Ça ne marche pas, le fichier : Babylon_English_French_nouveau.dic, est vide.
Je ne comprend pas bien ce que tu dis par : sed ... > fichier.
Merci pour l'aide
Dernière modification par L'Africain (Le 18/09/2011, à 14:33)
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne
#6 Le 18/09/2011, à 10:40
- erresse
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Bonjour l'Africain,
Pourquoi n'essaie-tu pas d'écrire ton nouveau fichier par la commande "w" de sed, lorsque tes substitutions sont terminées ?
genre : sed 'substitution wfichier_sortie' /home/.../fichier_source
Tu ne risques rien à tester ça...
Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Hors ligne
#7 Le 18/09/2011, à 14:25
- aduxas
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
sed 's|\$[0-9]\+\$\t|\t|' '/home/eveche/Bureau/Babylon_English_French.dic' /home/eveche/ > Babylon_English_French_nouveau.dic
C'est plus clair comme ça?
Dernière modification par aduxas (Le 18/09/2011, à 14:25)
Hors ligne
#8 Le 18/09/2011, à 14:41
- L'Africain
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Ok aduxas, voici le résultat te la commande que tu m'as proposée :
sed: erreur de lecture sur /home/######/: est un dossier
Eresse, je n'ai pas bien compris ?
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne
#9 Le 18/09/2011, à 16:39
- aduxas
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Je suis désolé: grosse erreur de copier/coller de ma part. Je recommence:
sed 's|\$[0-9]\+\$\t|\t|' /home/eveche/Bureau/Babylon_English_French.dic' > /home/eveche/Babylon_English_French_nouveau.dic
Donc: sed 'commande-sed' fichier-entrée > fichier-sortie.
Dernière modification par aduxas (Le 18/09/2011, à 16:40)
Hors ligne
#10 Le 18/09/2011, à 18:23
- erresse
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Simplement : sed comprend une commande "w nom_fichier_sortie" qui permet d'écrire le résultat du fichier source modifié.
Mais probablement que la redirection indiquée par aduxas fonctionne aussi pour créer un fichier en sortie...
Teste les deux et vois ce que tu préfères.
Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Hors ligne
#11 Le 20/09/2011, à 14:27
- L'Africain
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
Bonjour les amis,
J'espère que vous n'allez pas vous décourager, mais j'ai essayer les deux commandes, et ceci : ">" s'affiche dans le terminal ??
Aucun processus ne démarre.
Merci pour votre aide, au fait c'est la doc ubuntu qui donne la procédure pour la conversion de fichier bgl...
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne
#12 Le 20/09/2011, à 14:43
- aduxas
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
C'est grave. Ca doit etre l'age... Cette fois-ci, il reste encore une apostrophe. Je re-re-corrige:
sed 's|\$[0-9]\+\$\t|\t|' /home/eveche/Bureau/Babylon_English_French.dic > /home/eveche/Babylon_English_French_nouveau.dic
Hors ligne
#13 Le 20/09/2011, à 15:23
- L'Africain
Re : Commande sed ne marche pas sur le dico BGL pour stardict Résolu
formidable ça marche !! Je vais continuer ce qui est indiqué dans la doc, te tiens au courant et corrige la page...
édit : la doc donnait déjà une autre ligne de commande, mais comme je la consulte hors ligne je n'avais pas vu ! Cependant je l'ai remplacée tout de même par la tienne.
Merci à vous affaire classée !
Dernière modification par L'Africain (Le 20/09/2011, à 15:47)
Ubuntu-Unity 18.04 LDLC (clevo) X/Lubuntu-Mate
"Donne à celui qui te demande…" Mt 5,42
Hors ligne