Partition
在腳本中,partx 是否比 fdisk 更好地讀取分區表?
我有一些使用“fdisk -l”輸出的腳本在不同版本的 Linux 上失敗,因為 fdisk 的輸出略有不同。
“partx –show”命令在大多數係統上似乎是標準的(與 fdisk 一起打包)。
如果我轉換腳本來解析“partx –show”的輸出,這些腳本會隨著時間的推移表現更好嗎?您使用 partx 的腳本是否穩定或跨版本可移植?
我建議使用
sfdisk
util-linux 的另一部分而不是其中任何一個。為什麼?sfdisk 的手冊頁明確表示它是“用於分區任何塊設備的面向腳本的工具”,所以我希望它的輸出是穩定的。(和AFAIK,-d
輸出已經穩定了很長時間)。如果您正在編寫 shell 腳本,那麼
-d
輸出可能最容易解析。您還可以使用-l
和-o
來選擇特定的列。如果您正在編寫一些其他腳本(Perl、Python 等)並且有足夠新的 util-linux(大約在 2015 年中期),那麼-J
將為您提供 JSON。以下是如何使用
-J
參數的範例:sudo sfdisk -J /dev/sda
. 它的輸出如下所示:{ "partitiontable": { "label":"gpt", "id":"CA88994A-D99F-4347-89C2-6CCBC1B0765D", "device":"/dev/sda", "unit":"sectors", "firstlba":34, "lastlba":3907029134, "sectorsize":512, "partitions": [ {"node":"/dev/sda1", "start":2048, "size":7811072, "type":"0657FD6D-A4AB-43C4-84E5-0933C84B4F4F", "uuid":"EABE31D7-1E43-4385-97E1-A8C9C4549C72"}, {"node":"/dev/sda2", "start":7813120, "size":3899215872, "type":"0FC63DAF-8483-4772-8E79-3D69D8477DE4", "uuid":"EEBBAB54-0A5A-4B3F-9BEB-4FE10350EE2F"} ] } }