How to Use an Environment Variable as an Environment Variable Name

Posted by Synetech inc. on Stack Overflow See other posts from Stack Overflow or by Synetech inc.
Published on 2010-04-12T16:41:39Z Indexed on 2010/04/12 22:12 UTC
Read the original article Hit count: 413

Hi,

In my pursuit of a solution to another environment-variable/batch-file related problem, I have once again come across a problem I have visited before (but cannot for the life of me remember how, or even if I solved it).

Say you have two BAT files (or one batch file and the command line). How can one pass an environment variable name to the other so that it can read the variable? The following example does not work:

A.BAT:
  @call b.bat path

B.BAT:
  @echo %%1%

> A.BAT
> %1
> B.BAT path
> %1

It is easy enough to pass the environment variable name, but the callee cannot seem to use it. (I don’t remember if or how I dealt with this the last time it came up, but I suspect it required the less-than-ideal use of redirecting temporary BAT files and calling them and such.)

Any ideas? Thanks.

© Stack Overflow or respective owner

Related posts about batch-file

Related posts about environment-variables