Derouler simultanement 2 variables
Pims
-
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je suis sur u nprojet pour mettre a jour des fichier html
je doit donc faire différente modification sur le liens dans ces fichier ex: remplcer %20 par un espace et plusieur autre caractère
l'inconvenient et que j'ai stocké cette liste de caratère dans 2 fichier (carac spécial / carac remplacant ) pour qu'a l'avenir ce soit plus simple a modifier; cependant ca fait beaucoup d'operation d' I/O.
au debut de mon script je copie donc mes fichier chacun dans une variable.
puis je lance une boucle while en incrementant une variable pour au fur et a mesure recupérer le carc spécial et sont equivalent.
mais le faite de faire carc-spécial=$(echo liste_carac_special | cud -d: -f'$i') prend beaucoup de temps
auriez une solucion plus rapide a me proposer?
je souhaite garder le sistème de fichier pour une meilleur flexibilité pour l'avenir.
Merci
je suis sur u nprojet pour mettre a jour des fichier html
je doit donc faire différente modification sur le liens dans ces fichier ex: remplcer %20 par un espace et plusieur autre caractère
l'inconvenient et que j'ai stocké cette liste de caratère dans 2 fichier (carac spécial / carac remplacant ) pour qu'a l'avenir ce soit plus simple a modifier; cependant ca fait beaucoup d'operation d' I/O.
au debut de mon script je copie donc mes fichier chacun dans une variable.
puis je lance une boucle while en incrementant une variable pour au fur et a mesure recupérer le carc spécial et sont equivalent.
mais le faite de faire carc-spécial=$(echo liste_carac_special | cud -d: -f'$i') prend beaucoup de temps
auriez une solucion plus rapide a me proposer?
je souhaite garder le sistème de fichier pour une meilleur flexibilité pour l'avenir.
Merci
A voir également:
- Derouler simultanement 2 variables
- Supercopier 2 - Télécharger - Gestion de fichiers
- 2 ecran pc - Guide
- Faire 2 colonnes sur word - Guide
- Whatsapp 2 - Guide
- Word numéro de page 1/2 - Guide
8 réponses
Salut,
Pour t'aider à optimiser ton traitement encore faudrait-il qu'on en comprenne toutes les subtilités ;-\
Donc un petit exemple de ce que tu fais, fichier d'entrée, fichiers de correspondance et script seraient les bienvenus ;-)
Pour t'aider à optimiser ton traitement encore faudrait-il qu'on en comprenne toutes les subtilités ;-\
Donc un petit exemple de ce que tu fais, fichier d'entrée, fichiers de correspondance et script seraient les bienvenus ;-)
ex :
Carac spéciaux | remplacant
|
& | &
é | e
Äô | a
vaoici un exemple de mes fichier
par la suite je recupère un lien html dans un fichier et fait un sed dessus
ligne=$(echo ligne| sed 's|\'$carac-special'|\'$carac-remplacant'|g');
il faut donc recupérer dans les variables carac-special et carac-remplacant les 2 caractère correspondant dans chacun des 2 fichier.
attention cette opération ce produit à chaque nouveau lien (total environ 50 000 liens)
merci
Carac spéciaux | remplacant
|
& | &
é | e
Äô | a
vaoici un exemple de mes fichier
par la suite je recupère un lien html dans un fichier et fait un sed dessus
ligne=$(echo ligne| sed 's|\'$carac-special'|\'$carac-remplacant'|g');
il faut donc recupérer dans les variables carac-special et carac-remplacant les 2 caractère correspondant dans chacun des 2 fichier.
attention cette opération ce produit à chaque nouveau lien (total environ 50 000 liens)
merci
Tu mets tes correspondances dans un fichier texte (encodage.sed) du genre :
s/[éèêë]/e/g s/[àâä]/a/g s/Äô/a/g etc.Puis tu appelles ton fichier :
ligne="$(echo $ligne| sed -f encodage.sed)";-))
d'abord merci
Mais ceraisse possible de faire ca ?
s/[éèêë]/e/g
s/[àâä]/a/g
s/Äô/a/g
etc.
Puis tu appelles ton fichier :
varsed=$(cat encodage.sed)
ligne="$(echo $ligne| sed -f $varsed)"
Merci
Mais ceraisse possible de faire ca ?
s/[éèêë]/e/g
s/[àâä]/a/g
s/Äô/a/g
etc.
Puis tu appelles ton fichier :
varsed=$(cat encodage.sed)
ligne="$(echo $ligne| sed -f $varsed)"
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
l'interert et de lire dans une variable (en Ram) qui aura ete chargé au début du soft plus que 1 acces fichier à chaque lien html dans mon fichier
Ah ok... malheureusement non, on ne peut pas appeler le contenu d'une variable de cette manière avec "sed", il faut absolument que ce soit un fichier ;-(
J'avais peut-être pensé au Sticky_Bit, mais normalement c'est valable pour un exécutable, donc je ne sais pas si ça le fera aussi sur un fichier en lecture seule ? ;-\
J'avais peut-être pensé au Sticky_Bit, mais normalement c'est valable pour un exécutable, donc je ne sais pas si ça le fera aussi sur un fichier en lecture seule ? ;-\
dsl ca n'optimise pas beaucoupt
Sinon est-il possible de mettre chaque ligne d'un fichier dans une variable différente
je c que c possible
mais ce qui serai bien c'est que ca ce fasse automatiquement avec une longueur de fichier quequonque et le nom des variable qui s'incremente tout seul?
merci
Sinon est-il possible de mettre chaque ligne d'un fichier dans une variable différente
je c que c possible
mais ce qui serai bien c'est que ca ce fasse automatiquement avec une longueur de fichier quequonque et le nom des variable qui s'incremente tout seul?
merci
Dsl ca n'optimise pas beaucoup
Comment t'y-es-tu pris ?
Je pensais à ça :
- Créé un script bash (foo.sh) avec :
Comment t'y-es-tu pris ?
Je pensais à ça :
- Créé un script bash (foo.sh) avec :
#! /bin/sh sed ' s/[éèêë]/e/g s/[àâä]/a/g s/Äô/a/g ' <<<${@}- Rendre le fichier exécutable avec le sticky-bit :
chmod 1755 foo.sh- Puis à l'intérieur de ton script, avoir une ligne de traitement du genre :
ligne="$(./foo.sh ${ligne})"À tester...