"Sourcing" a script's env into D?

Jacob Carlborg doob at me.com
Thu Sep 29 23:18:34 PDT 2011


On 2011-09-29 19:31, Nick Sabalausky wrote:
> Due to process separation, the following won't work:
>
> script.sh:
> #!/bin/sh
> SOME_VAR=foobar
>
> test.d:
> import std.process;
> void main()
> {
>      system("./script.sh");
>      assert(environment["SOME_VAR"] == "foobar");
> }
>
> This, of course, is because the script is run in a totally separate process
> (AIUI). The same thing happens in Windows, too.
>
> Is there some way to actually get the env that results from the script? I'm
> looking for solutions for both Posix and Windows.

Either you do it how it works in DVM or have the script write out a file 
that the parent process reads.

-- 
/Jacob Carlborg


More information about the Digitalmars-d-learn mailing list