Eric Bergman-Terrell's Blog

PowerShell Tip: Determine the Drive Letter Corresponding to a Volume Name
August 11, 2011

I have an external USB drive that I use for backups. The backups are performed by a PowerShell script. My problem is that the drive letters change frequently, as other USB drives are plugged in and unplugged.

I updated the PowerShell script to determine the drive letter based on the volume name, which does not change. Here is the code that does this:

function GetDriveLetter($volume_name)
$drive = Get-WmiObject win32_logicaldisk | Where-Object {$_.VolumeName-eq $volume_name } | select -ExpandProperty DeviceID

if ($drive -eq $null)
Throw "Cannot find drive with volume name of " + $volume_name

return $drive
Keywords: PowerShell, USB Drive, Drive Letter, Volume Name

Reader Comments

Comment on this Blog Post

Recent Posts

EBTCalc Users: A Desktop Version is Now Available!October 25, 2019
Python Script to Audit MediaMonkey TranscodingAugust 15, 2019
How to decompile Java code with JetBrains IntelliJ IDEA (2018.2.3, Windows 10)October 5, 2018
Java Programming Tip: SWT Photo Frame ProgramOctober 31, 2016
Vault 3 (Desktop) Version 1.63 ReleasedSeptember 9, 2016
"Compliance with Court Orders Act of 2016"April 9, 2016
Disable "Visual Voicemail" on Android / T-MobileJanuary 17, 2016