shrink_disk/shrinkfix
2025-09-16 14:35:16 +08:00

24 lines
595 B
Bash

#!/bin/bash
if test -f $1; then
e=$(sudo sgdisk -v $1 | grep "The 'e' option")
if [ ! -z "$e" ]; then
sudo sgdisk -e $1
else
echo "file ok - not e option"
fi
#sleep 15
k=$(sudo sgdisk -v $1 | sed -n '/secondary/,/Using \x27k\x27/p' | sed ':a;N;$!ba;s/\n/ /g')
if [ ! -z "$k" ]; then
i=$( echo $k | grep -oP -- '\(ending at sector\s+\K\d+')
f=$( echo $k | grep -oP -- '\(sector\s+\K\d+')
add=$(sudo sgdisk -i 1 $1 | grep -oP -- 'Last sector:\s+\K\d+')
n=$(($add+$f-$i))
sudo sgdisk -k $n $1
else
echo "file ok - not k option"
fi
else
echo "file not exist"
fi