full path to source file __FILE__

Jonathan M Davis via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Thu Jul 21 15:59:07 PDT 2016


On Thursday, July 21, 2016 19:54:34 Jonathan Marler via Digitalmars-d-learn 
wrote:
> Is there a way to get the full path of the current source file?
> Something like:
>
> __FILE_FULL_PATH__
>
> I'm asking because I'm rewriting a batch script in D, meant to be
> ran with rdmd.  However, the script needs to know it's own path.
> The original batch script uses the %~dp0 variable for this, but
> I'm at a loss on how to do this in D.  Since rdmd compiles the
> executable to the %TEMP% directory, thisExePath won't work.
>
> BATCH
> -----
> echo "Directory of this script is " %~dp0
>
>
> DLANG
> -----
> import std.stdio;
> int main(string[] args) {
>      writeln("Directory of this script is ", ???);
> }

Well, while it might not be what you want, the obvious solution is to just
compile it as an executable and put that where you want rather than making
it a script.

- Jonathan M Davis



More information about the Digitalmars-d-learn mailing list