首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在powershell中格式化多个USB驱动器

在powershell中格式化多个USB驱动器
EN

Stack Overflow用户
提问于 2022-06-10 14:11:10
回答 1查看 129关注 0票数 0

新的powershell,并试图找出如何格式化所有附加usb驱动器。下面的代码在格式期间提示输入驱动器字母,继续迭代,并且不会转义指定驱动器字母提示符。

代码语言:javascript
复制
foreach ($usbDrive in get-disk)
{
if ($usbDrive.bustype -eq 'usb')
    {
     Format-Volume -FileSystem FAT32    
    }
}

这段代码似乎有效,但它提示输入的usb驱动器比插入的要多。如果可能的话,我希望驱动器保持相同的字母,并跳过提示。

代码语言:javascript
复制
foreach ($usbDrive in get-disk | where bustype -eq 'usb'){Format-Volume -FileSystem FAT32}
EN

回答 1

Stack Overflow用户

发布于 2022-06-18 12:12:36

我今天正在做类似的事情,我用提示创建了这个脚本,以避免格式化任何不必要的驱动器:

代码语言:javascript
复制
$flashDrives = (get-volume | Where-Object { $_.drivetype -eq 'removable' })

foreach ($flashDrive in $flashDrives) {
    $title = 'Format Drive?'
    $message = 'Do you want to format ' + $flashDrive.FileSystemLabel + ' (' + $flashDrive.DriveLetter + ':) ' + 'with file system "' + $flashDrive.FileSystemType + '" ?'

    $yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", `
        "Format drive."

    $no = New-Object System.Management.Automation.Host.ChoiceDescription "&No", `
        "Skip drive."

    $options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)

    $result = $host.ui.PromptForChoice($title, $message, $options, 0)

    switch ($result) {
        0 { Format-Volume -DriveLetter $flashDrive.DriveLetter -FileSystem FAT32 }
        1 { "Skipping drive" }
    }
}

如果您真的想在没有任何提示的情况下格式化,您可以删除这些提示,这是您自己的风险!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72575701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档