Powershell 检查任何 SD \ CF 卡(可能是多个),然后将 JPG 和 CR2 文件复制到不同的目录
Powershell check for any SD \ CF cards (may be multiple), then copy JPG's and CR2 files to different directories
目标:我想自动将文件(JPG 和 \ 或 CR2)从多个 SD \ CF 卡复制到我的文件到我的照片存储系统中。
问题:与 Powershell 相比,我在 Bash 中更自在,但 WSL2 还不能轻松支持 USB 驱动器。
问:如何检查是否插入了一张或多张SD\CF卡,以及是否存在某些文件夹?在这种情况下,[drive]:\DCIM0CANON
。我发现了 this 个问题,但我无法完全解决它。理想情况下,我希望能够将输出存储在一个变量中,然后我可以循环访问它(运行 说复制例程)
.Net 命名空间...
Get-WMiObject -Class Win32_Volume | Select Name, DriveLetter, Caption, Label, DevideID, DriveType, Capacity
或
Get-CimInstance -ClassName Win32_Volume | Select Name, DriveLetter, Caption, Label, DevideID, DriveType, Capacity
或使用 Win32_DiskDrive、Win32_DiskDrivePhysicalMedia,并使用模型 属性 值。
Partitions : 1
DeviceID : \.\PHYSICALDRIVE6
Model : SDHC Card
Size : 3964584960
Caption : SDHC Card
... 和 Get-PSDrive ...
Get-PSDriive
或
Get-PSDrive -PSProvider FileSystem
# Results
<#
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \Music\GratefulDead
#>
...cmdlet 将列出所有连接的驱动器,如图所示。
此处记录了过滤驱动器:
Filtering get-psdrive to all Local Drives
DriveType is a property of the Win32_Volume structure which enumerates
the type of drive. The value 3 stands for Local Disk. Below is the
full list of values.
0 - Unknown
1 - No Root Directory
2 - Removable Disk
3 - Local Disk
4 - Network Drive
5 - Compact Disk
6 - RAM Disk
请注意,没有 property/option 专门用于 SD 或 CF。
因此,对于您的用例,如果您的 SD/CF 具有与上述类似的根标签,那么您可以使用根 属性 值或使用驱动器大小作为目标来访问它们,因为在正常情况下,您的 camera/phone 等存储介质的总大小始终低于 32GB。
目标:我想自动将文件(JPG 和 \ 或 CR2)从多个 SD \ CF 卡复制到我的文件到我的照片存储系统中。
问题:与 Powershell 相比,我在 Bash 中更自在,但 WSL2 还不能轻松支持 USB 驱动器。
问:如何检查是否插入了一张或多张SD\CF卡,以及是否存在某些文件夹?在这种情况下,[drive]:\DCIM0CANON
。我发现了 this 个问题,但我无法完全解决它。理想情况下,我希望能够将输出存储在一个变量中,然后我可以循环访问它(运行 说复制例程)
.Net 命名空间...
Get-WMiObject -Class Win32_Volume | Select Name, DriveLetter, Caption, Label, DevideID, DriveType, Capacity
或
Get-CimInstance -ClassName Win32_Volume | Select Name, DriveLetter, Caption, Label, DevideID, DriveType, Capacity
或使用 Win32_DiskDrive、Win32_DiskDrivePhysicalMedia,并使用模型 属性 值。
Partitions : 1
DeviceID : \.\PHYSICALDRIVE6
Model : SDHC Card
Size : 3964584960
Caption : SDHC Card
... 和 Get-PSDrive ...
Get-PSDriive
或
Get-PSDrive -PSProvider FileSystem
# Results
<#
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \Music\GratefulDead
#>
...cmdlet 将列出所有连接的驱动器,如图所示。
此处记录了过滤驱动器:
Filtering get-psdrive to all Local Drives
DriveType is a property of the Win32_Volume structure which enumerates the type of drive. The value 3 stands for Local Disk. Below is the full list of values.
0 - Unknown
1 - No Root Directory
2 - Removable Disk
3 - Local Disk
4 - Network Drive
5 - Compact Disk
6 - RAM Disk
请注意,没有 property/option 专门用于 SD 或 CF。
因此,对于您的用例,如果您的 SD/CF 具有与上述类似的根标签,那么您可以使用根 属性 值或使用驱动器大小作为目标来访问它们,因为在正常情况下,您的 camera/phone 等存储介质的总大小始终低于 32GB。