Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

récupérer un tableau bash dans Perl

2 réponses
Avatar
Tribulations Parallèles
Bonjour à tous,

Je me suis amusé à constituer des variables bash avec pour noms de variables
le nom des couleurs:

Par exemple, j'ai $lightcyanonlightgrey=\033[1m\033[36m\033[47m

J'ai un paquet de variables comme celle-ci, en fait, à peu près toutes les
combinaisons de couleurs.
Comment puis-je faire pour récupérer ces variables bash dans un programme
Perl, afin de pouvoir éviter d'avoir à les redéfinir en Perl?

Merci d'avance,

Julien
--
"Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).

2 réponses

Avatar
espie
In article <454e06ad$0$21503$,
Tribulations Parallèles wrote:
Bonjour à tous,

Je me suis amusé à constituer des variables bash avec pour noms de variables
le nom des couleurs:

Par exemple, j'ai $lightcyanonlightgrey=33[1m33[36m33[47m

J'ai un paquet de variables comme celle-ci, en fait, à peu près toutes les
combinaisons de couleurs.
Comment puis-je faire pour récupérer ces variables bash dans un programme
Perl, afin de pouvoir éviter d'avoir à les redéfinir en Perl?


Si ton code a une tete `reguliere', il suffit de le lire ligne par ligne,
et de convertir.

Si ton code a une tete un peu plus bizarre, tu peux sans doute traiter la
sortie de ton script bash, suffit de l'executer avec un set -x pour avoir
une trace de tout ce qui se passe, ce qui comprend les affectations de
variables...

Avatar
Jerome Quelin
Tribulations Parallèles wrote:
Je me suis amusé à constituer des variables bash avec pour noms de
variables le nom des couleurs:

Par exemple, j'ai $lightcyanonlightgrey=33[1m33[36m33[47m

J'ai un paquet de variables comme celle-ci, en fait, à peu près toutes les
combinaisons de couleurs.
Comment puis-je faire pour récupérer ces variables bash dans un programme
Perl, afin de pouvoir éviter d'avoir à les redéfinir en Perl?


si tes variables sont EXPORT-ées, alors tu peux y accéder comme n'importe
quelle autre variable d'environnement grâce au hash %ENV.

par exemple :
print $ENV{lightcyanonlightgrey};

cdlt,
jérôme
--