How to find location/path of current script in powershell

Question:

I have a script (script1.ps1) that lies in C:\FolderA

What powershell code can I insert in the script, that it will print what ever current location/path of the script. (The goal is to make this script portable)

ie:

-When in folderA, the code will print C:\FolderA (full-path)

-When Script1.ps1 is moved to C:\FolderB\FolderC and run, it prints the full path of C:\FolderB\FolderC

Any help would be much appreciated.

Thanks


Thanks to @Nkosi and @Kori Gill

The answer I was looking for was $PSScriptRoot

One thing to note, is that I noticed I had to define a variable first inside the script before running the script:

with this it worked otherwise it didnt

Answer:

See “get-help about_Automatic_Variables”.

Read sections on:

  • $MyInvocation
  • $PSScriptRoot
  • $PSCommandPath

Source:

How to find location/path of current script in powershell by licensed under CC BY-SA | With most appropriate answer!

Leave a Reply