
如何獲取GPT磁盤分區(qū)的數(shù)目并替換掉指定文本中的內(nèi)容最后由 電動(dòng)小馬達(dá) 于 -3-22 23:52有一點(diǎn)復(fù)雜,大神慢慢看在文件夾中存在3個(gè)文件“reslut.txt”“diskpart.ini”“id.ini”------------------以下為result.txt的內(nèi)容--------------------
- 磁盤 ###狀態(tài) 大小 可用 DynGpt
- -----------------------------------------
- 磁盤 0聯(lián)機(jī) 40 GB0 B*
- 磁盤 1聯(lián)機(jī) 14 GB0 B
- 磁盤 0 現(xiàn)在是所選磁盤。
- 分區(qū) ### 類型大小 偏移量
- -------------------------------------------
- 分區(qū)1主要36 GB20 KB
- 分區(qū)2主要6571 MB37 GB
- 磁盤 1 現(xiàn)在是所選磁盤。
- 分區(qū) ### 類型大小 偏移量
- -------------------------------------------
- 分區(qū)1主要14 GB 128 KB
nclick="copycode($('code0'));">復(fù)制代碼
------------------以上為reslut.txt文件內(nèi)容--------------------------------------以下為diskpart.ini文件的內(nèi)容---------------
- list disk
- sel disk 9
- list part
- sel part 9
- shrink desired =1500
- CREATE PAR PRIMARY SIZE=1024
- format quick fs=ntfs label=LENOVO_PART
- assign letter=M“
- CREATE PAR PRIMARY
- format quick fs=fat32 label=LRS_ESP
- assign letter=N“
nclick="copycode($('code1'));">復(fù)制代碼
--------------------以上為diskpart.ini文件的內(nèi)容-----------------------------------以下為id.ini文件的內(nèi)容---------------
- LIST DISK
- SEL DISK 9
- LIST PART
- SEL PART 8
- Set id=BFBFAFE7-A34F-448A-9A5B-6213EB736C22
- gpt attributes=0x8000000000000001
- SEL PART 7
- remove
- Set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
- gpt attributes=0x8000000000000001
- EXIT
nclick="copycode($('code2'));">復(fù)制代碼
--------------------以上為id.ini文件的內(nèi)容---------------我有這么個(gè)設(shè)想在result.txt的某一行有一個(gè)星號(hào)(有星號(hào)的稱為GPT磁盤),我想用cmd判斷出哪個(gè)磁盤是GPT磁盤(即最后有星號(hào))并且得到這個(gè)磁盤最后一個(gè)分區(qū)的編號(hào),比如這個(gè)文件中的磁盤0分區(qū)2。如果只有一個(gè)磁盤是GPT磁盤那么繼續(xù)進(jìn)行“接下來的操作”,如果有兩個(gè)或者兩個(gè)以上的磁盤是GPT磁盤那么就詢問用戶哪個(gè)是你要選擇的磁盤,讓用戶自己選擇0還是1還是2等等如果沒有星號(hào),則echo 無GPT磁盤之后退出CMD接下來的操作:根據(jù)磁盤編號(hào)0,將這個(gè)0替換掉diskpart.ini中第2行的數(shù)字9將這個(gè)0替換掉id.ini第2行的數(shù)字9根據(jù)分區(qū)編號(hào)2,將diskpart.ini的第四行末尾的9替換為2將id.ini第四行的8替換為4(規(guī)律是N+2)將id.ini第七行的7替換為3(規(guī)律是N+1)------------------------------------------------------------------------------總結(jié)一下:對(duì)于上面三個(gè)文件我想做的事情是判斷出帶星號(hào)的磁盤編號(hào)和這個(gè)磁盤的最后一個(gè)分區(qū)編號(hào)如果有一個(gè)磁盤有星號(hào)就進(jìn)行“接下來的操作”,如果有兩個(gè)或者以上的磁盤就讓用戶自己輸入磁盤編號(hào),然后進(jìn)行“接下來的操作”--------------------------------------------------------------------------------------流程圖如下http://pan.baidu.com/s/1c0UGgi0