是否有一种简单的方法来确定给定分区的文件系统的十六进制ID? 比如,我有一个/ dev / sda1分区,它是“Linux”类型,文件系统ID为83(例如fdisk所示)。我需要从bash脚本中获取此数字而不解析fdisk / sfdisk的输出。
答案 0 :(得分:3)
分区ID存储在MBR(或逻辑的EMBR)中。因此它们不存储在设备本身中。即/ dev / sda1不包含其类型。
fdisk和类似命令会显示分区类型,并且可以正确地执行此操作。试图避免它们将毫无意义。
此Linux shell脚本将显示给定设备的分区ID:
#!/bin/sh
fdisk -l | tr -d '*' | awk -v dev=$1 '$1 == dev { print $5 } '
# some_command /dev/sda1
83