Je suis en train de fignoler un script qui génère une page web pour
publier des photos.
Le script génère en fait deux fichiers, car chaque photo est disponible
en basse et en haute résolution.
Après avoir écrit sur disque le début de l'index basse résolution, je
fais un simple sed pour écrire le début de l'index haute résolution. La
ligne est:
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec
des slashs qui perturbent sed qui raconte:
sed: -e expression #1, char 14: unknown option to `s'
Le script est par là : <http://tinyurl.com/5wul8g> et un exemple de
résultat est là : <http://tinyurl.com/4x6t72>
Comment puis-je faire pour que les caractères saisis par le user de
bonne foi ne pose pas problème ?
J'ai bien pensé à un hack ignoble à base de cut -d "/", mais j'ai peur
que la séance de debug qui suivra n'entame sérieusement la ligne de
budget "Aspro" :)
Merci de votre aide.
--
Moduler la turbulence pseudo-adaptative est illogique, puisque
l'incursion localisée va phaser le cybergement aéro-instable.
Hugo (né il y a 1 388 269 031 secondes)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Rémi Moyen
Bonjour,
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe quel caractère (et pas forcément /) comme séparateur pour sed. Donc un truc genre : sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne trouves aucun caractère dont tu puisses garantir l'inexistence dans les variables, ça ne résoudra pas ton problème...
J'ai bien pensé à un hack ignoble à base de cut -d "/", mais j'ai peur que la séance de debug qui suivra n'entame sérieusement la ligne de budget "Aspro" :)
C'était aussi ce que j'avais essayé (avant qu'on m'indique l'astuce ci-dessus) et j'avais réussi à faire ce que je voulais avec cut et sed en plusieurs passes, mais c'était vraiment acrobatique, moche et pas robuste (ça ne marchait que parce que mes chaînes de caractères n'étaient pas du tout quelconques). -- Rémi Moyen
Bonjour,
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec
des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème
similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe
quel caractère (et pas forcément /) comme séparateur pour sed. Donc un
truc genre :
sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne
trouves aucun caractère dont tu puisses garantir l'inexistence dans les
variables, ça ne résoudra pas ton problème...
J'ai bien pensé à un hack ignoble à base de cut -d "/", mais j'ai peur
que la séance de debug qui suivra n'entame sérieusement la ligne de
budget "Aspro" :)
C'était aussi ce que j'avais essayé (avant qu'on m'indique l'astuce
ci-dessus) et j'avais réussi à faire ce que je voulais avec cut et sed
en plusieurs passes, mais c'était vraiment acrobatique, moche et pas
robuste (ça ne marchait que parce que mes chaînes de caractères
n'étaient pas du tout quelconques).
--
Rémi Moyen
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe quel caractère (et pas forcément /) comme séparateur pour sed. Donc un truc genre : sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne trouves aucun caractère dont tu puisses garantir l'inexistence dans les variables, ça ne résoudra pas ton problème...
J'ai bien pensé à un hack ignoble à base de cut -d "/", mais j'ai peur que la séance de debug qui suivra n'entame sérieusement la ligne de budget "Aspro" :)
C'était aussi ce que j'avais essayé (avant qu'on m'indique l'astuce ci-dessus) et j'avais réussi à faire ce que je voulais avec cut et sed en plusieurs passes, mais c'était vraiment acrobatique, moche et pas robuste (ça ne marchait que parce que mes chaînes de caractères n'étaient pas du tout quelconques). -- Rémi Moyen
Hugolino
Le Wed, 23 Apr 2008 20:27:07 +0100, Rémi Moyen a écrit:
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe quel caractère (et pas forcément /) comme séparateur pour sed. Donc un truc genre : sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Farpait, merci m'sieur : ça roulaize.
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne trouves aucun caractère dont tu puisses garantir l'inexistence dans les variables, ça ne résoudra pas ton problème...
Bin, je parlais d'un utilisateur de bonne foi, alors je pense que ça fera l'affaire.
Merci à toi.
-- Ça déplaisait au youzeur. Personne n'aime passer pour un ignorant, et encore moins pour un crétin. Alors Bill Gates eut pitié, et il dit : Windows sera user friendly ! Mais voila : on ne peut pas être copain avec tout le monde. Et Windows ne cause pas au sysadmin, il boude.
Le Wed, 23 Apr 2008 20:27:07 +0100, Rémi Moyen a écrit:
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec
des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème
similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe
quel caractère (et pas forcément /) comme séparateur pour sed. Donc un
truc genre :
sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Farpait, merci m'sieur : ça roulaize.
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne
trouves aucun caractère dont tu puisses garantir l'inexistence dans les
variables, ça ne résoudra pas ton problème...
Bin, je parlais d'un utilisateur de bonne foi, alors je pense que ça
fera l'affaire.
Merci à toi.
--
Ça déplaisait au youzeur. Personne n'aime passer pour un ignorant, et encore
moins pour un crétin. Alors Bill Gates eut pitié, et il dit : Windows sera
user friendly ! Mais voila : on ne peut pas être copain avec tout le monde. Et
Windows ne cause pas au sysadmin, il boude.
Le Wed, 23 Apr 2008 20:27:07 +0100, Rémi Moyen a écrit:
sed "s/$TitrePage/$TitrePage (hi-res)/" $THFILE > $THFILE_HIRES
Problème: le titre d'un index de photos comporte parfois une date avec des slashs qui perturbent sed qui raconte:
Tu connais peut-être déjà, mais le jour où j'avais eu un problème similaire, une bonne âme m'avait indiqué qu'on peut utiliser n'importe quel caractère (et pas forcément /) comme séparateur pour sed. Donc un truc genre : sed "s|$TitrePage|$TitrePage (hi-res)|" $THFILE > $THFILE_HIRES
Farpait, merci m'sieur : ça roulaize.
Évidemment, si tes variables peuvent aussi contenir des | et que tu ne trouves aucun caractère dont tu puisses garantir l'inexistence dans les variables, ça ne résoudra pas ton problème...
Bin, je parlais d'un utilisateur de bonne foi, alors je pense que ça fera l'affaire.
Merci à toi.
-- Ça déplaisait au youzeur. Personne n'aime passer pour un ignorant, et encore moins pour un crétin. Alors Bill Gates eut pitié, et il dit : Windows sera user friendly ! Mais voila : on ne peut pas être copain avec tout le monde. Et Windows ne cause pas au sysadmin, il boude.