OVH Cloud OVH Cloud

questions sur les quotes

11 réponses
Avatar
David LE BOURGEOIS
Bonjour.

Plusieurs petites choses me trottent dans la tête.

1) Les backquotes :

david@abeille ~/tmp $ perl -e '`echo foo` or warn; print "$?\n";'
0
david@abeille ~/tmp $ perl -e '`echo foo > bar` or warn; print "$?\n";'
Warning: something's wrong at -e line 1.
0
david@abeille ~/tmp $ ls bar
bar

Qu'est-ce qui ne va pas ?

2) Pour afficher une simple quote je ne trouve pas mieux que :

perl -e 'print "'\''\n"'

Et vous ?

3) Comment protéger une variable lors d'un appel à system() ?

david@abeille ~/tmp $ perl -ne 'chomp;`touch '\''$_'\''`' <<FIN
heredoc> a
heredoc> b
heredoc> c
heredoc> l'exception
heredoc> FIN
sh: -c: line 1: unexpected EOF while looking for matching `''
sh: -c: line 2: syntax error: unexpected end of file
david@abeille ~/tmp $ ls a b c
a b c

Je pourrai protéger avec des ", mais le problème reste le même avec '.
De plus, les variables contenant "$(rm -rf ~)" pourraient faire mal !

J'avais penser combiner les " avec un if /^\w+$/ pour protéger, mais je
n'ai rien trouver d'autre dans perlsec.

Avez-vous des idées ?


Merci d'avance pour vos réponses.

--
David LE BOURGEOIS

1 réponse

1 2
Avatar
Paul GABORIT
À (at) Thu, 29 Apr 2004 22:27:28 +0200,
Benoit Izac écrivait (wrote):
Bonjour,

le 29/04/2004 à 21:53, David LE BOURGEOIS a écrit
dans le message <40915d52$0$17608$ :

A moins qu'il existe un module pour perl, afin d'extraire et d'encoder
des pistes audio en mp3 ... ?


Pourquoi ne dis-tu pas ça dès le départ ?


Un nouvel exemple du syndrome XY : « X est le problème. Croyant que Y
est la solution, on ne pose des questions que sur Y alors qu'une solution
pour X est Z. »

--
Paul Gaborit - <http://www.enstimac.fr/~gaborit/>
Perl en français - <http://www.enstimac.fr/Perl/>


1 2