无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3623|回复: 12
打印 上一主题 下一主题

[求助] 分享&求助

[复制链接]
跳转到指定楼层
1#
发表于 2021-8-24 10:52:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这两天捣鼓了一下自动分区
写完发现自己都看不懂了已经.
论写备注的重要性.
内啥我用S大的工具做的PE发现触摸板双支滚动功能失效了,有大佬提供解决思路吗...
内啥我用S大的工具做的PE发现触摸板双支滚动功能失效了,有大佬提供解决思路吗...
代码↓↓↓↓↓↓↓↓↓↓↓
@echo off
for %%p in (C D E F) do (
    (ECHO SELECT VOL %%p &ECHO REMOVE)|diskpart
)

SET IS=GOTO IS&SET F=ECHO 没有折返点。&SET D=0&SET AD=&SET EC=echo 硬盘 %%i:容量为!D%%i! GB,物理位置:%%n&SET ME=START PECMD "MESS+top 机器内有!D!个硬盘。\n系统%img%将装在容量为!SYDR!GB的硬盘里。!PT!!DPT!*300000"
setlocal enabledelayedexpansion
:START
for /f "tokens=2,4,6,8" %%i in ('echo list disk ^| diskpart ^| findstr /i GB') do (
    SET D%%i=%%j
    IF %%j GTR 8 for /f "tokens=3" %%n in ('^(echo select disk %%i^&echo DETAIL disk^) ^|diskpart ^| findstr /i 位置路径') do (
    %EC%&IF %%n NEQ UNAVAILABLE ECHO 硬盘 %%i 将被重新分区。&(ECHO SELECT DISK %%i&ECHO CLEAN)|DISKPART&SET AD=!AD!%%i &SET /A D+=1
    )
)
ECHO 机器内有%D%个硬盘。
IF "%img%" EQU "CLEANDISK" START PECMD "MESS+top 硬盘已清空。*5000" &EXIT
IF %DIY% EQU 1 GOTO DIY
IF %D% EQU 0 PECMD "MESS+top 没有检测到合适的硬盘。\n请检查."&EXIT
IF %D% EQU 1 GOTO OD
IF %D% EQU 2 GOTO SD
IF %D% EQU 3 GOTO TD
ECHO START ERROR.
PAUSE
:OD
for %%e in (!AD!) do (
   IF !D%%e! GTR 100 IF 200 GTR !D%%e! SET SYDR=!D%%e!&SET SYDN=%%e&SET PT=\n硬盘将不分区。&GOTO S
   IF !D%%e! GTR 200 IF 400 GTR !D%%e! SET SYDR=!D%%e!&SET SYDN=%%e&SET PT=\n硬盘将不分区。&GOTO S
   IF !D%%e! GTR 400 IF 1200 GTR !D%%e! SET SYDR=!D%%e!&SET SYDN=%%e&SET PT=\n硬盘将分两个区。&GOTO SS
   IF !D%%e! GTR 1200 SET SYDR=!D%%e!&SET SYDN=%%e&SET PT=\n硬盘将分两个区。&GOTO SSSS
)
ECHO OD ERROR
PAUSE
:SD
SET T=0
for %%e in (!AD!) do (
    ECHO %%e !D%%e! T:%T%
    IF !T! EQU 0 SET FDN=%%e&SET FDR=!D%%e!&SET /A T+=1
    IF !T! EQU 1 SET SDN=%%e&SET SDR=!D%%e!
)
echo %FDN% %FDR%
echo %SDN% %SDR%
IF !FDR! GTR !SDR! ECHO %SDR%GB 为系统盘.&SET SYDR=!SDR!&SET SYDN=!SDN!&SET DEDR=!FDR!&SET DEDN=!FDN!
IF !SDR! GTR !FDR! ECHO %FDR%GB 为系统盘.&SET SYDR=!FDR!&SET SYDN=!FDN!&SET DEDR=!SDR!&SET DEDN=!SDN!
GOTO SDP
ECHO SD ERROR
PAUSE
:SDP
SET F=GOTO BID
IF !SYDR! GTR 400 SET NP=2&SET DPT=\n!DEDR!GB将分两个区。&GOTO SS
IF 400 GTR !SYDR! SET NP=3&SET DPT=\n!DEDR!GB将分三个区。&&GOTO S
ECHO SDP ERROR
PAUSE
:BID
ECHO 到达折返点,炸毁指挥部。
SET F=ECHO 没有折返点。
SET SYDN=!DEDN!
SET SYDR=!DEDR!
IF %NP% EQU 3 SET/A  BBB=!SYDR!*1024/3&GOTO PPP
IF %NP% EQU 2 SET/A  BBB=!SYDR!*1024/2&GOTO PP
ECHO BID ERROR.
PAUSE
:TD
GOTO BUG
:S
%ME%
(ECHO SELECT DISK %SYDN%&ECHO CLEAN&ECHO CONVER GPT&ECHO CREATE PARTITION EFI SIZE =100&ECHO FORMAT FS=FAT32 QUICK&ECHO ASSIGN LETTER=Z&ECHO CREATE PARTITION PRIMARY&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=C)|DISKPART
%F%
%IS%
ECHO S ERROR
PAUSE
:SS
%ME%
(ECHO SELECT DISK %SYDN%&ECHO CLEAN&ECHO CONVER GPT&ECHO CREATE PARTITION EFI SIZE =100&ECHO FORMAT FS=FAT32 QUICK&ECHO ASSIGN LETTER=Z&ECHO CREATE PARTITION PRIMARY SIZE =243712&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=C&ECHO CREATE PARTITION PRIMARY&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=D)|DISKPART
LABEL D:DATA
%F%
%IS%
ECHO SS ERROR
PAUSE
:SSSS
(ECHO SELECT DISK %SYDN%&ECHO CLEAN&ECHO CONVER GPT&ECHO CREATE PARTITION EFI SIZE =100&ECHO FORMAT FS=FAT32 QUICK&ECHO ASSIGN LETTER=Z&ECHO CREATE PARTITION PRIMARY SIZE =243712&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=C)|DISKPART
SET/A  BBB=(!SYDR!-237)*1024/3
:PPP
(ECHO SELECT DISK %SYDN%&ECHO CREATE PARTITION PRIMARY SIZE =%BBB%&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=D)|DISKPART
:PP
(ECHO SELECT DISK %SYDN%&ECHO CREATE PARTITION PRIMARY SIZE =%BBB%&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=E&ECHO CREATE PARTITION PRIMARY SIZE =%BBB%&ECHO FORMAT FS=NTFS QUICK&ECHO ASSIGN LETTER=F)|DISKPART
%F%
%IS%
ECHO SSSS ERROR
PAUSE

代码↑↑↑↑↑↑↑↑↑
大概流程是先把C-F盘的盘符移除了
然后格盘,然后分区.
128/256+1T是1+3分区
512+1T是2+2分区.
我用来搭配IPXE,DISM自动部署系统用到的.防止哪天不小心把U盘格了找不回来,当做备份了.
2#
发表于 2021-8-24 12:47:27 | 只看该作者
论坛太可怕了, 千万别说别人分享的东西不好,一堆人咬你

点评

觉得不好自己动手改一下就好了问题不大. 给作者提一嘴,修不修改受是作者的事没必要吵得不可开交那样. 所以说触摸板这问题有头绪吗  详情 回复 发表于 2021-8-24 13:16
回复

使用道具 举报

3#
 楼主| 发表于 2021-8-24 13:16:09 | 只看该作者
barryade 发表于 2021-8-24 12:47
论坛太可怕了, 千万别说别人分享的东西不好,一堆人咬你

觉得不好自己动手改一下就好了问题不大.
给作者提一嘴,修不修改受是作者的事没必要吵得不可开交那样.
所以说触摸板这问题有头绪吗
回复

使用道具 举报

4#
发表于 2021-8-24 14:07:37 | 只看该作者
我的意思就是提醒你,
有问题就直接问, 别提“某大某某工具”  或者就隐晦一点
直接提名字 你可能会被攻击

点评

没,S大有问必答啊你可以去看看他帖子,氛围很棒  详情 回复 发表于 2021-8-24 14:13
回复

使用道具 举报

5#
 楼主| 发表于 2021-8-24 14:13:43 | 只看该作者
barryade 发表于 2021-8-24 14:07
我的意思就是提醒你,
有问题就直接问, 别提“某大某某工具”  或者就隐晦一点
直接提名字 你可能会被攻 ...

没,S大有问必答啊你可以去看看他帖子,氛围很棒

点评

给S大点赞  发表于 2021-8-24 14:15
回复

使用道具 举报

6#
发表于 2021-8-27 11:54:20 | 只看该作者
谢谢分享!
回复

使用道具 举报

7#
发表于 2021-8-27 12:06:04 | 只看该作者
DISKPART可以检查是否USB,就不会误格U盘了。

点评

IF %%n NEQ UNAVAILABLE 这个命令也能过滤U盘 因为我有挂载VHD,所以用这个会适合一点  详情 回复 发表于 2021-8-27 12:31
回复

使用道具 举报

8#
 楼主| 发表于 2021-8-27 12:31:03 | 只看该作者
szwp 发表于 2021-8-27 12:06
DISKPART可以检查是否USB,就不会误格U盘了。

IF %%n NEQ UNAVAILABLE 这个命令也能过滤U盘
因为我有挂载VHD,所以用这个会适合一点

点评

俺脚本做U盘启动盘,怕误格硬盘用的下面语句。 set /p d=请选择U盘: (echo sele disk %d%&echo deta disk)|diskpart|findstr 类型.*USB||pause  详情 回复 发表于 2021-8-27 12:39
回复

使用道具 举报

9#
发表于 2021-8-27 12:39:37 | 只看该作者
天使说请安静 发表于 2021-8-27 12:31
IF %%n NEQ UNAVAILABLE 这个命令也能过滤U盘
因为我有挂载VHD,所以用这个会适合一点

俺脚本做U盘启动盘,怕误格硬盘用的下面语句。
set /p d=请选择U盘:
(echo sele disk %d%&echo deta disk)|diskpart|findstr 类型.*USB||pause

点评

双重保险  详情 回复 发表于 2021-8-27 12:57
回复

使用道具 举报

10#
 楼主| 发表于 2021-8-27 12:57:10 | 只看该作者
szwp 发表于 2021-8-27 12:39
俺脚本做U盘启动盘,怕误格硬盘用的下面语句。
set /p d=请选择U盘:
(echo sele disk %d%&echo deta d ...

双重保险
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-1-15 19:14

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表