My PowerShell script file is located in C:/this-folder/that-folder/another-folder/powershell-file.ps1.

How do I get a variable that returns C:/this-folder/that-folder/another-folder/?

1

4 Answers

Try this command in your script:

Split-Path -parent $MyInvocation.MyCommand.Definition 
0

In PowerShell 3.0 you can get it with the new $PSScriptRoot variable, and with $PSCommandPath you can get the full script path.

There's also a great post by MVP Keith hill you may want to check: Determining $ScriptDir Safely

You can use a standard .NET method:

$dirName = [System.IO.Path]::GetDirectoryName("c:\temp\abc\myproj1\newdata.txt") 

From PowerShell: Get parent directory name from file or directory path.

1

I'm assuming you want to know what folder your script is running in when it's being run.

This should do it:

Split-Path $MyInvocation.MyCommand.Path 
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.