From 75881a09d0390e63b32f3bc50be27a720e65085f Mon Sep 17 00:00:00 2001 From: bin456789 Date: Sat, 4 May 2024 13:19:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E7=94=A8=20diskpart=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=8D=B7=20id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- reinstall.sh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/reinstall.sh b/reinstall.sh index ef075f3..9cbd48f 100644 --- a/reinstall.sh +++ b/reinstall.sh @@ -1446,9 +1446,16 @@ find_main_disk() { # diskpart 命令结果 # 磁盘 ID: E5FDE61C # 磁盘 ID: {92CF6564-9B2E-4348-A3BD-D84E3507EBD7} - disk_index=$(wmic logicaldisk where "DeviceID='$c:'" assoc:value /resultclass:Win32_DiskPartition | - grep 'DiskIndex=' | cut -d= -f2 | del_cr) - main_disk=$(printf "%s\n%s" "select disk $disk_index" "uniqueid disk" | diskpart | + if false; then + # https://github.com/bin456789/reinstall/issues/76 + disk_index=$(wmic logicaldisk where "DeviceID='$c:'" assoc:value /resultclass:Win32_DiskPartition | + grep 'DiskIndex=' | cut -d= -f2 | del_cr) + select_cmd="select disk $disk_index" + else + volume_index=$(printf "list volume" | diskpart | grep 'Partition' | awk '$3=="'$c'" {print $2}') + select_cmd="select volume $volume_index" + fi + main_disk=$(printf "%s\n%s" "$select_cmd" "uniqueid disk" | diskpart | tail -1 | awk '{print $NF}' | sed 's,[{}],,g' | del_cr) else # centos7下测试 lsblk --inverse $mapper | grep -w disk grub2-probe -t disk /