Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1659 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Echo du contenu d'une variable possible ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Echo du contenu d'une variable possible ?

n°1986213
chuckboy2
Posté le 21-04-2010 à 11:52:35  profilanswer
 

Bonjour à vous,
 
J'ai un petit soucis dans le dévellopement d'un batch. J'ai un peu de mal à expliquer clairement donc je vous montre en 4 lignes !
 
J'ai deux variables:
set TEST1=VOILA
set TEST2=TEST1
 
J'aimerais accéder à la chaine définit pour TEST1 (donc VOILA) en passant uniquement par TEST2.
 
J'avais penser à un truc du genre : echo %('echo %TEST2%')%
 
L'exemple peu semblé un peu bidon mais j'ai besoin de ce cas de figure dans mon dévellopement.
Merci
François

mood
Publicité
Posté le 21-04-2010 à 11:52:35  profilanswer
 

n°1986324
Arcan_-
Posté le 21-04-2010 à 14:42:22  profilanswer
 

set TEST1=VOILA
set TEST2=%TEST1%
 
echo %TEST2%
 
??

n°1986582
Xspawn_Lpc
Posté le 22-04-2010 à 11:59:57  profilanswer
 

@Arcan : non car dans ton exemple test2 prend la valeur de test1
 
Ce qu'il souhaite est plutot une sorte de pointeur et ca n'existe pas en dos.
 
En bidouillant on faire quelque chose comme ceci :  
for /f %i IN ('echo %%TEST2%%') do echo %i
 
Mais ca reste vraiemnt très crade.
 
@chuckboy2 : essaye d'envisager une autre manière de faire, ou passe sous un langue un peu plus évoluer.


---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
n°1988035
chuckboy2
Posté le 27-04-2010 à 14:52:56  profilanswer
 

Bon j'ai trouver une solution quelque peu crados mais qui fonctionne pour  
avoir mes pointeurs dans mes batch !
 
Sous UNIX:
env | grep $TEST2 | while read line
 do
   EnvVar=`echo $line | cut -d'=' -f1`
   EnvValue=`echo $line | cut -d'=' -f2`
   if [ "$EnvVar" == "$TEST2" ]; then
      ServiceFile=$EnvValue
   fi
done
 
Sous Windows:
for /f "tokens=1 delims=" %%r in ('set %TEST2%') do (  
 for /f "tokens=1 delims==" %%s in ('echo %%r') do (  
  if "%TEST2%" == "%%s" (
   for /f "tokens=2 delims==" %%t in ('echo %%r') do ( set ServiceFile=%%t)
   )
  )
)
 
C'est laid mais c'est a seule facon que j'ai trouvé !


Message édité par chuckboy2 le 27-04-2010 à 14:54:33

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Echo du contenu d'une variable possible ?

 

Sujets relatifs
[ VBS ] Récupérer une variable dans une page htmlpage html -> contenu dossier
[VBA] remplir une colonne excel avec une variable tableau[résolu] Nom de variable dans la variable de $_session
Taille header variable.[RESOLU] Requete SQL avec variable dynamique sous MS-DOS
Forcage Retour chariot en CSS3 possible grace à attr ?Problème variable dans une arborescence
variable d'environnementVariable vide après un LEFT JOIN malgré une requête ok
Plus de sujets relatifs à : Echo du contenu d'une variable possible ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR