Powershell - Extract the name of a file with/without its extension from its full path
To support me, you can subscribe to the channel, share and like the videos, disable your ad blocker or make a donation. Thank you!
Hello,
How to extract the name of a file with/without its extension from its full path in Powershell?
That’s what we’re going to look at in this article.
I propose a solution based on .Net (System.IO.Path) which does not require the file to exist and another solution which requires the file to exist.
Incidentally, I also give the code to retrieve the drive letter and path of the folder the file is in.
# Demo variables$Path1 = '$env:windir\system32\windowspowershell\v1.0\powershell_ise.exe'$Path2 = 'c:\chemin\inexistant\altf4formation.txt'
# File name with extension[System.IO.Path]::GetFileName($Path2)# Or (requires that the file exists)(Get-Item $Path1).name
# File name without extension[System.IO.Path]::GetFileNameWithoutExtension($path2)# Or (requires that the file exists)(Get-Item $Path1).Basename
# Just the file extension[System.IO.Path]::GetExtension($path2)# Or (requires the file to exist)(Get-Item $Path1).Extension
# Just the drive letter[System.IO.Path]::GetPathRoot($path2)# Or (requires the file to exist)(Get-Item $Path1).DirectoryName.substring(0,3)
# The path without the file name and extension[System.IO.Path]::GetDirectoryName($path2)# Or (requires the file to exist)(Get-Item $Path1).DirectoryName
Related links
Powershell - Testing network connectivity and port accessibility
Testing network connectivity and port accessibility with PowershellPowershell - Display network connections (equivalent to netstat)
Display network connections (listening ports, active connections...)Powershell - Testing name resolution (equivalent to nslookup)
Powershell commands to test name resolution (equivalent to nslookup)Powershell - View and manage DNS configuration of network interfaces
Powershell commands to display and manage DNS configuration of network interfacesPowershell - Managing IP configuration of network interfaces
Powershell commands to view and modify the IP configuration of network interfacesPowershell - Managing the status and configuration of network interfaces
Powershell commands to view and modify the status and configuration of network interfaces (disable IPv6, enable/disable an interface)
Follow me on
Support me
Last content
Powershell - Testing network connectivity and port accessibility
Powershell - Display network connections (equivalent to netstat)
Powershell - Testing name resolution (equivalent to nslookup)
Powershell - View and manage DNS configuration of network interfaces
Powershell - Managing IP configuration of network interfaces
Powershell - Managing the status and configuration of network interfaces
Powershell and the Left Hand Side
Powershell - Managing disks, partitions and volumes