Folder Path of a Powershell File in Powershell

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

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.

Elena Rostova

Elena Rostova

Lead Health, Wellness & Medical Journalist

Elena Rostova holds a Master's degree in Public Health Journalism. She covers groundbreaking medical research, holistic wellness trends, mental health awareness, and nutritional science.

Share this article
Twitter Facebook Pinterest