Изменять лсблк
Порядок сортировки
лсблк
сортирует разделы в порядке, который трудно соблюсти. Первым выбором будет метод сортировки без необходимости написания скрипта bash или скрипта python.
Аналогичный вопрос был задан в Unix и Linux:
Однако ответ там для использования -x ИМЯ
Параметр для сортировки приводит к исчезновению отступов дерева.
Текущий порядок сортировки
Вот как лсблк
отображает сейчас:
$ лсдрв
НАИМЕНОВАНИЕ ТИП FS ЭТИКЕТКА ТОЧКА КРЕПЛЕНИЯ РАЗМЕР МОДЕЛЬ
nvme0n1 477G Твердотельный накопитель Samsung 960 PRO 512 ГБ
âânvme0n1p9 своп [SWAP] 7.9G
âânvme0n1p7 ext4 Old_Ubuntu_16.04 /mnt/old 23.1G
âânvme0n1p5 нтфс 859M
âânvme0n1p3 16M
âânvme0n1p1 нтфс 450M
âânvme0n1p8 ntfs Shared_WSL+Linux /mnt/e 9G
âânvme0n1p10 ext4 Ubuntu_18.04 /mnt/clone 27.2G
âânvme0n1p6 ext4 New_Ubuntu_16.04/45.1G
âânvme0n1p4 ntfs NVMe_Win10 /mnt/c 363.2G
âânvme0n1p2 vfat /boot/efi 99M
mmcblk0 119.1G
ââmmcblk0p1 vfat SANDISK128 /media/rick/SANDISK128 119.1G
sr0 1024M DVD+/-RW DW316
sda 931.5G HGST HTS721010A9
ââsda4 ntfs WINRETOOLS 450M
ââsda2 128M
ââsda5 ntfs Изображение 11.4G
ââsda3 ntfs HGST_Win10 /mnt/d 919G
ââsda1 vfat ESP 500M
Предлагаемый порядок сортировки
Вот как это лсблк
должны быть отсортированы:
$ лсдрв
НАИМЕНОВАНИЕ ТИП FS ЭТИКЕТКА ТОЧКА КРЕПЛЕНИЯ РАЗМЕР МОДЕЛЬ
nvme0n1 477G Твердотельный накопитель Samsung 960 PRO 512 ГБ
âânvme0n1p1 нтфс 450M
âânvme0n1p2 vfat /boot/efi 99M
âânvme0n1p3 16M
âânvme0n1p4 ntfs NVMe_Win10 /mnt/c 363.2G
âânvme0n1p5 нтфс 859M
âânvme0n1p6 ext4 New_Ubuntu_16.04/45.1G
âânvme0n1p7 ext4 Old_Ubuntu_16.04 /mnt/old 23.1G
âânvme0n1p8 ntfs Shared_WSL+Linux /mnt/e 9G
âânvme0n1p9 своп [SWAP] 7.9G
âânvme0n1p10 ext4 Ubuntu_18.04 /mnt/clone 27.2G
mmcblk0 119.1G
ââmmcblk0p1 vfat SANDISK128 /media/rick/SANDISK128 119.1G
sr0 1024M DVD+/-RW DW316
sda 931.5G HGST HTS721010A9
ââsda1 vfat ESP 500M
ââsda2 128M
ââsda3 ntfs HGST_Win10 /mnt/d 919G
ââsda4 ntfs WINRETOOLS 450M
ââsda5 ntfs Изображение 11.4G
Примечание: лсдрв
псевдоним, определенный в ~/.bashrc
:
$ псевдоним lsdrv
псевдоним lsdrv='lsblk -o ИМЯ,ТИП,ЭТИКЕТКА,ТОЧКА МОНТАЖА,РАЗМЕР,МОДЕЛЬ |egrep -v "^loop"'
Резюме
Сложности изменения порядка сортировки:
- Только разделы с символами рисования линий
ââ
и â
сортируются по своим дискам.
- После сортировки разделов может понадобиться последний раздел
ââ
заменено на â
.
- После сортировки разделов может потребоваться от первого до предпоследнего раздела.
â
заменено на ââ
.
- Старый "Ахиллесова пята" сортировочных мест
10
после 1
, Э.Г. 1
тогда 10
тогда 2
. Действительно 9
должен появиться перед 10
.
Порядок сортировки лсблк
был шипом в течение многих лет. Надеюсь, у кого-то есть простое решение с помощью утилит GNU, таких как: аук
, сед
, grep
, уникальный
и/или Сортировать
, и т.д.