我可以通过名称访问 USB 驱动器吗?

Can I access a USB drive by its name?

我的 windows 机器上有一个 Powershell 脚本,需要从 USB 驱动器访问数据。它从 USB 记忆棒读取文件并执行其操作。我需要在许多机器上执行此操作。问题是 USB 驱动器可能会出现在不同的驱动器号下,具体取决于我将记忆棒插入的机器。我的 USB 驱动器称为“USBData”。有没有办法使用 USB 驱动器的名称而不是驱动器号来可靠地访问它?

你可以做一个:

    (Get-WMIObject Win32_Volume | ? { $_.Label -eq 'USBData' }).DriveLetter

获取Drive,然后相对于它执行。类似于:

$USBDrive = (Get-WMIObject Win32_Volume | ? { $_.Label -eq 'USBData' }).DriveLetter
$ProcessFullPath = "$USBDrive\Executable.exe"
Start-Process $ProcessFullPath
$driveletter = (Get-Volume -FileSystemLabel "USBData").DriveLetter
echo "${driveletter}:\"