Board logo

标题: [系统相关] [已解决]批处理怎样格式化但跳过磁盘? [打印本页]

作者: 我号被盗了    时间: 2023-2-11 11:29     标题: [已解决]批处理怎样格式化但跳过磁盘?

本帖最后由 我号被盗了 于 2023-2-15 09:09 编辑

快速格式化除了卷标为WinPE_UWT的磁盘和X:盘 格式化的卷标全部为 Windows
作者: yakeyun    时间: 2023-2-11 20:59

回复 1# 我号被盗了


既然是在PE下操作,那么固有的盘符是不变的,只需要排除固有盘符后,其它盘符都格式化。
比如以进进去PE后,那么U盘完全是可以拔出的,所以原本的盘符“U”也会被系统征用。此时只有X盘存在,所以可以做如下写法。
  1. @echo off & setlocal enabledelayedexpansion
  2. Title 硬盘操作中,请稍等...
  3. cd /d "%~dp0"
  4. for %%a in (c d e f g h i j k l m n o p q r s t u v w y z) do (
  5. if exist "%%a:\" (
  6. echo y | format /u /q  %%a
  7. label %%a: Windows
  8. )
  9. )
  10. exit
复制代码

作者: 我号被盗了    时间: 2023-2-14 16:08

回复 2# yakeyun
拔U盘的话有个iso引用不到了,还是需要考虑U盘
作者: 1073    时间: 2023-2-14 20:25

  1. @echo off
  2. rem Get all disk information
  3. for /f "skip=1 tokens=1,2" %%a in ('diskpart /s list_disks.txt') do (
  4.   set disk=%%a
  5.   set info=%%b
  6.   
  7.   rem Check if the disk label is not "WinPE_UWT" and the disk is not X:
  8.   if not "%info%"=="WinPE_UWT" if not "%disk%"=="X:" (
  9.     rem Select the disk
  10.     echo select disk %disk% > diskpart.txt
  11.     echo clean >> diskpart.txt
  12.     echo create partition primary >> diskpart.txt
  13.     echo format quick fs=ntfs label="Windows" >> diskpart.txt
  14.     echo assign letter=%disk% >> diskpart.txt
  15.     diskpart /s diskpart.txt
  16.   )
  17. )
  18. echo Disk format complete.
复制代码

作者: 我号被盗了    时间: 2023-2-15 09:06

回复 4# 1073
ChatGpt 真是厉害




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2