8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png
2021-04-03 11:29:15 55

目前在制作WinPE时,有这样的需求,PECMD中不知道怎么来写这个脚本?

需求:在PE启动后,将电脑的硬盘分区全部卸载,再将硬盘的最后一个分区装载为C盘使用

现在只能手动先看硬盘有几个分区(用三个分区示例),然后用DISK来实现

DISK ,0,1,1,,
DISK ,0,2,1,,
DISK ,0,3,1,,
DISK c:,0,3,1,,

如果分区多了,这个就无效了

求助!!!

收藏
分享
看过的人 (7)
  • xsd871
  • 1
  • menvi
  • nguyenphi123
  • feiniao
  • allon_xu
  • caocaofff
最新回复 (1)
  • 尉官 caocaofff 2021-04-03 11:31:39

    你这个可以参考盘符理顺代码:

    //盘符整理子程序
     _SUB  FREEUSB
    	FORM &T=%D%
    	//TEAM FORM  &T,&B=%D%| MESS  T=[%T%] B=[%B%]
    	FIND %D%:\>0,!! FIND %D%:\>2,!TEAM ENVI &RP=%&D%| EXEC @=%WinDir%\System32\mount.cmd %D%:
    	FIND $%&T%=DRIVE_FIXED,!! FIND $%&RP%=NA,! SUBJ *%&D%  //U盘后的固定磁盘
    	FIND $DRIVE_USBFLASH = %&T%, ENVI  &T=DRIVE_USBDISK    //USB软盘(DRIVE_USBFLASH) ,当作 USB硬盘(DRIVE_USBDISK)
    	FIND $%&T%=DRIVE_USBDISK,!! SUBJ *%&D%  //U盘
    	FIND $%&T%=DRIVE_USBDISK,!! FIND $%&RP%=NA, ENVI &RP=%&D%  //RP:第一个U盘
    	MSTR &D=%&I%,1,%&DRVS%
    	CALC &I=%&I% + 1
     _END
    
     _SUB ORDER_DRIVE  
    	 TEAM ENVI &&DRVS=CDEFGHIJKLMNOPQRSTUV****| ENVI  &&I=2| ENVI  &&D=C| ENVI &&RP=NA| ENVI &&T=| ENVI &&B=   //初始化
    	 LOOP $%&D%=*,! CALL FREEUSB
    	 //重新加载HD,USB
    	 SHOW *F:0
    	 SHOW *U:-1,,,O
    	 //登录后,重新加载USB
    	 //RUNS PECMD.EXE EXEC PECMD.EXE TEAM WAIT 1000|SHOW U:0,U_DISK 
     _END 
    我的博客:cboot.org
    • PECMD技术社区
      3
        登录 注册
返回