10

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:

$Path = $PSScriptRoot $Path 

with this it worked otherwise it didnt

1

1 Answer 1

12

See "get-help about_Automatic_Variables".

Read sections on:

  • $MyInvocation
  • $PSScriptRoot
  • $PSCommandPath
Sign up to request clarification or add additional context in comments.

2 Comments

At least for me, I had to first run Update-Help as admin before this command would work. Otherwise, use the online documentation.
I had to first run also this command from Admin PS Console: Install-Script -Name Install-AboutHelp from this other question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.