Ventoy多系统盘日常使用,快速挂载任意VHD文件到主系统

本文介绍了一个用PowerShell编写的脚本,用于检测U盘中的VHD文件是否挂载,根据用户选择进行挂载或卸载操作。脚本会递归查找指定目录下的VHD文件,并显示进度和用户交互界面。

在U盘某目录下新建MountVHD.txt文件(笔者放置于根目录下)

将以下代码复制进去

# 1. 显示目录下的vhd文件,计入变量中
$vhdFiles = Get-ChildItem -Recurse -Filter *.vhd -Path .\0ImageFiles

# 显示进度条
$totalVhdCount = $vhdFiles.Count
$processedCount = 0
Write-Progress -Activity "正在检测VHD文件" -Status "已处理 $processedCount 个文件 / 共 $totalVhdCount 个文件" -PercentComplete 0

# 将检测到的vhd依次判断,是否已经被挂载过了
$mountedVhds = @()
$unmountedVhds = @()

foreach ($vhd in $vhdFiles) {
    $vhdInfo = Get-VHD -Path $vhd.FullName

    if ($vhdInfo.Attached -eq $true) {
        $mountedVhds += $vhd
        Write-Host "$($vhd.Name) 已挂载"
    }
    else {
        $unmountedVhds += $vhd
        Write-Host "$($vhd.Name) 未挂载"
    }

    # 更新进度条
    $processedCount++
    $percentComplete = [math]::Round(($processedCount / $totalVhdCount) * 100)
    Write-Progress -Activity "正在检测VHD文件" -Status "已处理 $processedCount 个文件 / 共 $totalVhdCount 个文件" -PercentComplete $percentComplete
}

# 完成时清除进度条
Write-Progress -Activity "正在检测VHD文件" -St
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值