]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
lsblk: sort list of columns
authorKarel Zak <kzak@redhat.com>
Wed, 9 Jun 2021 09:09:33 +0000 (11:09 +0200)
committerKarel Zak <kzak@redhat.com>
Wed, 9 Jun 2021 09:09:33 +0000 (11:09 +0200)
It's better to maintain sorted list and it's also better for --help output.

Signed-off-by: Karel Zak <kzak@redhat.com>
misc-utils/lsblk.c

index 3ee8bec10819a95e12e03fbeef79cae2657bd0b1..754081d0777c8eca9e97f6c84589ebc7732e73bc 100644 (file)
@@ -65,64 +65,64 @@ static int column_id_to_number(int id);
 
 /* column IDs */
 enum {
-       COL_NAME = 0,
-       COL_KNAME,
-       COL_PATH,
-       COL_MAJMIN,
+       COL_ALIOFF = 0,
+       COL_DALIGN,
+       COL_DAX,
+       COL_DGRAN,
+       COL_DMAX,
+       COL_DZERO,
        COL_FSAVAIL,
+       COL_FSROOTS,
        COL_FSSIZE,
        COL_FSTYPE,
        COL_FSUSED,
        COL_FSUSEPERC,
-       COL_FSROOTS,
        COL_FSVERSION,
-       COL_TARGET,
-       COL_TARGETS,
+       COL_GROUP,
+       COL_HCTL,
+       COL_HOTPLUG,
+       COL_KNAME,
        COL_LABEL,
-       COL_UUID,
-       COL_PTUUID,
-       COL_PTTYPE,
+       COL_LOGSEC,
+       COL_MAJMIN,
+       COL_MINIO,
+       COL_MODE,
+       COL_MODEL,
+       COL_NAME,
+       COL_OPTIO,
+       COL_OWNER,
+       COL_PARTFLAGS,
+       COL_PARTLABEL,
        COL_PARTTYPE,
        COL_PARTTYPENAME,
-       COL_PARTLABEL,
        COL_PARTUUID,
-       COL_PARTFLAGS,
+       COL_PATH,
+       COL_PHYSEC,
+       COL_PKNAME,
+       COL_PTTYPE,
+       COL_PTUUID,
        COL_RA,
-       COL_RO,
+       COL_RAND,
+       COL_REV,
        COL_RM,
-       COL_HOTPLUG,
-       COL_MODEL,
+       COL_RO,
+       COL_ROTA,
+       COL_RQ_SIZE,
+       COL_SCHED,
        COL_SERIAL,
        COL_SIZE,
+       COL_START,
        COL_STATE,
-       COL_OWNER,
-       COL_GROUP,
-       COL_MODE,
-       COL_ALIOFF,
-       COL_MINIO,
-       COL_OPTIO,
-       COL_PHYSEC,
-       COL_LOGSEC,
-       COL_ROTA,
-       COL_SCHED,
-       COL_RQ_SIZE,
+       COL_SUBSYS,
+       COL_TARGET,
+       COL_TARGETS,
+       COL_TRANSPORT,
        COL_TYPE,
-       COL_DALIGN,
-       COL_DGRAN,
-       COL_DMAX,
-       COL_DZERO,
+       COL_UUID,
+       COL_VENDOR,
        COL_WSAME,
        COL_WWN,
-       COL_RAND,
-       COL_PKNAME,
-       COL_HCTL,
-       COL_TRANSPORT,
-       COL_SUBSYS,
-       COL_REV,
-       COL_VENDOR,
        COL_ZONED,
-       COL_DAX,
-       COL_START
 };
 
 /* basic table settings */
@@ -149,76 +149,70 @@ struct colinfo {
        const char      *name;          /* header */
        double          whint;          /* width hint (N < 1 is in percent of termwidth) */
        int             flags;          /* SCOLS_FL_* */
-       const char      *help;
+       const char      *help;
        int             type;           /* COLTYPE_* */
 };
 
 /* columns descriptions */
 static struct colinfo infos[] = {
-       [COL_NAME]   = { "NAME",    0.25, SCOLS_FL_NOEXTREMES, N_("device name") },
-       [COL_KNAME]  = { "KNAME",   0.3, 0, N_("internal kernel device name") },
-       [COL_PKNAME] = { "PKNAME",  0.3, 0, N_("internal parent kernel device name") },
-       [COL_PATH]   = { "PATH",    0.3,  0, N_("path to the device node") },
-       [COL_MAJMIN] = { "MAJ:MIN", 6, 0, N_("major:minor device number"), COLTYPE_SORTNUM },
-
-       [COL_FSAVAIL]   = { "FSAVAIL", 5, SCOLS_FL_RIGHT, N_("filesystem size available") },
-       [COL_FSSIZE]    = { "FSSIZE", 5, SCOLS_FL_RIGHT, N_("filesystem size") },
-       [COL_FSTYPE]    = { "FSTYPE", 0.1, SCOLS_FL_TRUNC, N_("filesystem type") },
-       [COL_FSUSED]    = { "FSUSED", 5, SCOLS_FL_RIGHT, N_("filesystem size used") },
+       [COL_ALIOFF] = { "ALIGNMENT", 6, SCOLS_FL_RIGHT, N_("alignment offset"), COLTYPE_NUM },
+       [COL_DALIGN] = { "DISC-ALN", 6, SCOLS_FL_RIGHT, N_("discard alignment offset"), COLTYPE_NUM },
+       [COL_DAX] = { "DAX", 1, SCOLS_FL_RIGHT, N_("dax-capable device"), COLTYPE_BOOL },
+       [COL_DGRAN] = { "DISC-GRAN", 6, SCOLS_FL_RIGHT, N_("discard granularity"), COLTYPE_SIZE },
+       [COL_DMAX] = { "DISC-MAX", 6, SCOLS_FL_RIGHT, N_("discard max bytes"), COLTYPE_SIZE },
+       [COL_DZERO] = { "DISC-ZERO", 1, SCOLS_FL_RIGHT, N_("discard zeroes data"), COLTYPE_BOOL },
+       [COL_FSAVAIL] = { "FSAVAIL", 5, SCOLS_FL_RIGHT, N_("filesystem size available") },
+       [COL_FSROOTS] = { "FSROOTS", 0.1, SCOLS_FL_WRAP, N_("mounted filesystem roots") },
+       [COL_FSSIZE] = { "FSSIZE", 5, SCOLS_FL_RIGHT, N_("filesystem size") },
+       [COL_FSTYPE] = { "FSTYPE", 0.1, SCOLS_FL_TRUNC, N_("filesystem type") },
+       [COL_FSUSED] = { "FSUSED", 5, SCOLS_FL_RIGHT, N_("filesystem size used") },
        [COL_FSUSEPERC] = { "FSUSE%", 3, SCOLS_FL_RIGHT, N_("filesystem use percentage") },
-       [COL_FSROOTS]   = { "FSROOTS", 0.1, SCOLS_FL_WRAP, N_("mounted filesystem roots") },
        [COL_FSVERSION] = { "FSVER", 0.1, SCOLS_FL_TRUNC, N_("filesystem version") },
-
-       [COL_TARGET]    = { "MOUNTPOINT",  0.10, SCOLS_FL_TRUNC, N_("where the device is mounted") },
-       [COL_TARGETS]   = { "MOUNTPOINTS", 0.10, SCOLS_FL_WRAP,  N_("all locations where device is mounted") },
-
-       [COL_LABEL]  = { "LABEL",   0.1, 0, N_("filesystem LABEL") },
-       [COL_UUID]   = { "UUID",    36,  0, N_("filesystem UUID") },
-
-       [COL_PTUUID] = { "PTUUID",  36,  0, N_("partition table identifier (usually UUID)") },
-       [COL_PTTYPE] = { "PTTYPE",  0.1, 0, N_("partition table type") },
-
-       [COL_PARTTYPE]  = { "PARTTYPE",  36,  0, N_("partition type code or UUID") },
-       [COL_PARTTYPENAME]  = { "PARTTYPENAME",  0.1,  0, N_("partition type name") },
+       [COL_GROUP] = { "GROUP", 0.1, SCOLS_FL_TRUNC, N_("group name") },
+       [COL_HCTL] = { "HCTL", 10, 0, N_("Host:Channel:Target:Lun for SCSI") },
+       [COL_HOTPLUG] = { "HOTPLUG", 1, SCOLS_FL_RIGHT, N_("removable or hotplug device (usb, pcmcia, ...)"), COLTYPE_BOOL },
+       [COL_KNAME] = { "KNAME", 0.3, 0, N_("internal kernel device name") },
+       [COL_LABEL] = { "LABEL", 0.1, 0, N_("filesystem LABEL") },
+       [COL_LOGSEC] = { "LOG-SEC", 7, SCOLS_FL_RIGHT, N_("logical sector size"), COLTYPE_NUM },
+       [COL_MAJMIN] = { "MAJ:MIN", 6, 0, N_("major:minor device number"), COLTYPE_SORTNUM },
+       [COL_MINIO] = { "MIN-IO", 6, SCOLS_FL_RIGHT, N_("minimum I/O size"), COLTYPE_NUM },
+       [COL_MODEL] = { "MODEL", 0.1, SCOLS_FL_TRUNC, N_("device identifier") },
+       [COL_MODE] = { "MODE", 10, 0, N_("device node permissions") },
+       [COL_NAME] = { "NAME", 0.25, SCOLS_FL_NOEXTREMES, N_("device name") },
+       [COL_OPTIO] = { "OPT-IO", 6, SCOLS_FL_RIGHT, N_("optimal I/O size"), COLTYPE_NUM },
+       [COL_OWNER] = { "OWNER", 0.1, SCOLS_FL_TRUNC, N_("user name"), },
+       [COL_PARTFLAGS] = { "PARTFLAGS", 36,  0, N_("partition flags") },
        [COL_PARTLABEL] = { "PARTLABEL", 0.1, 0, N_("partition LABEL") },
-       [COL_PARTUUID]  = { "PARTUUID",  36,  0, N_("partition UUID") },
-       [COL_PARTFLAGS] = { "PARTFLAGS",  36,  0, N_("partition flags") },
-
-       [COL_RA]     = { "RA",      3, SCOLS_FL_RIGHT, N_("read-ahead of the device"), COLTYPE_NUM },
-       [COL_RO]     = { "RO",      1, SCOLS_FL_RIGHT, N_("read-only device"), COLTYPE_BOOL },
-       [COL_RM]     = { "RM",      1, SCOLS_FL_RIGHT, N_("removable device"), COLTYPE_BOOL },
-       [COL_HOTPLUG]= { "HOTPLUG", 1, SCOLS_FL_RIGHT, N_("removable or hotplug device (usb, pcmcia, ...)"), COLTYPE_BOOL },
-       [COL_ROTA]   = { "ROTA",    1, SCOLS_FL_RIGHT, N_("rotational device"), COLTYPE_BOOL },
-       [COL_RAND]   = { "RAND",    1, SCOLS_FL_RIGHT, N_("adds randomness"), COLTYPE_BOOL },
-       [COL_MODEL]  = { "MODEL",   0.1, SCOLS_FL_TRUNC, N_("device identifier") },
-       [COL_SERIAL] = { "SERIAL",  0.1, SCOLS_FL_TRUNC, N_("disk serial number") },
-       [COL_SIZE]   = { "SIZE",    5, SCOLS_FL_RIGHT, N_("size of the device"), COLTYPE_SIZE },
-       [COL_STATE]  = { "STATE",   7, SCOLS_FL_TRUNC, N_("state of the device") },
-       [COL_OWNER]  = { "OWNER",   0.1, SCOLS_FL_TRUNC, N_("user name"), },
-       [COL_GROUP]  = { "GROUP",   0.1, SCOLS_FL_TRUNC, N_("group name") },
-       [COL_MODE]   = { "MODE",    10,   0, N_("device node permissions") },
-       [COL_ALIOFF] = { "ALIGNMENT", 6, SCOLS_FL_RIGHT, N_("alignment offset"), COLTYPE_NUM },
-       [COL_MINIO]  = { "MIN-IO",  6, SCOLS_FL_RIGHT, N_("minimum I/O size"), COLTYPE_NUM },
-       [COL_OPTIO]  = { "OPT-IO",  6, SCOLS_FL_RIGHT, N_("optimal I/O size"), COLTYPE_NUM },
+       [COL_PARTTYPENAME]  = { "PARTTYPENAME",  0.1,  0, N_("partition type name") },
+       [COL_PARTTYPE] = { "PARTTYPE", 36,  0, N_("partition type code or UUID") },
+       [COL_PARTUUID] = { "PARTUUID", 36,  0, N_("partition UUID") },
+       [COL_PATH] = { "PATH", 0.3, 0, N_("path to the device node") },
        [COL_PHYSEC] = { "PHY-SEC", 7, SCOLS_FL_RIGHT, N_("physical sector size"), COLTYPE_NUM },
-       [COL_LOGSEC] = { "LOG-SEC", 7, SCOLS_FL_RIGHT, N_("logical sector size"), COLTYPE_NUM },
-       [COL_SCHED]  = { "SCHED",   0.1, 0, N_("I/O scheduler name") },
+       [COL_PKNAME] = { "PKNAME", 0.3, 0, N_("internal parent kernel device name") },
+       [COL_PTTYPE] = { "PTTYPE", 0.1, 0, N_("partition table type") },
+       [COL_PTUUID] = { "PTUUID", 36,  0, N_("partition table identifier (usually UUID)") },
+       [COL_RAND] = { "RAND", 1, SCOLS_FL_RIGHT, N_("adds randomness"), COLTYPE_BOOL },
+       [COL_RA] = { "RA", 3, SCOLS_FL_RIGHT, N_("read-ahead of the device"), COLTYPE_NUM },
+       [COL_REV] = { "REV", 4, SCOLS_FL_RIGHT, N_("device revision") },
+       [COL_RM] = { "RM", 1, SCOLS_FL_RIGHT, N_("removable device"), COLTYPE_BOOL },
+       [COL_ROTA] = { "ROTA", 1, SCOLS_FL_RIGHT, N_("rotational device"), COLTYPE_BOOL },
+       [COL_RO] = { "RO", 1, SCOLS_FL_RIGHT, N_("read-only device"), COLTYPE_BOOL },
        [COL_RQ_SIZE]= { "RQ-SIZE", 5, SCOLS_FL_RIGHT, N_("request queue size"), COLTYPE_NUM },
-       [COL_TYPE]   = { "TYPE",    4, 0, N_("device type") },
-       [COL_DALIGN] = { "DISC-ALN", 6, SCOLS_FL_RIGHT, N_("discard alignment offset"), COLTYPE_NUM },
-       [COL_DGRAN]  = { "DISC-GRAN", 6, SCOLS_FL_RIGHT, N_("discard granularity"), COLTYPE_SIZE },
-       [COL_DMAX]   = { "DISC-MAX", 6, SCOLS_FL_RIGHT, N_("discard max bytes"), COLTYPE_SIZE },
-       [COL_DZERO]  = { "DISC-ZERO", 1, SCOLS_FL_RIGHT, N_("discard zeroes data"), COLTYPE_BOOL },
-       [COL_WSAME]  = { "WSAME",   6, SCOLS_FL_RIGHT, N_("write same max bytes"), COLTYPE_SIZE },
-       [COL_WWN]    = { "WWN",     18, 0, N_("unique storage identifier") },
-       [COL_HCTL]   = { "HCTL", 10, 0, N_("Host:Channel:Target:Lun for SCSI") },
-       [COL_TRANSPORT] = { "TRAN", 6, 0, N_("device transport type") },
+       [COL_SCHED] = { "SCHED", 0.1, 0, N_("I/O scheduler name") },
+       [COL_SERIAL] = { "SERIAL", 0.1, SCOLS_FL_TRUNC, N_("disk serial number") },
+       [COL_SIZE] = { "SIZE", 5, SCOLS_FL_RIGHT, N_("size of the device"), COLTYPE_SIZE },
+       [COL_START] = { "START", 5, SCOLS_FL_RIGHT, N_("partition start offset"), COLTYPE_NUM },
+       [COL_STATE] = { "STATE", 7, SCOLS_FL_TRUNC, N_("state of the device") },
        [COL_SUBSYS] = { "SUBSYSTEMS", 0.1, SCOLS_FL_NOEXTREMES, N_("de-duplicated chain of subsystems") },
-       [COL_REV]    = { "REV",   4, SCOLS_FL_RIGHT, N_("device revision") },
+       [COL_TARGETS] = { "MOUNTPOINTS", 0.10, SCOLS_FL_WRAP,  N_("all locations where device is mounted") },
+       [COL_TARGET] = { "MOUNTPOINT", 0.10, SCOLS_FL_TRUNC, N_("where the device is mounted") },
+       [COL_TRANSPORT] = { "TRAN", 6, 0, N_("device transport type") },
+       [COL_TYPE] = { "TYPE", 4, 0, N_("device type") },
+       [COL_UUID] = { "UUID", 36,  0, N_("filesystem UUID") },
        [COL_VENDOR] = { "VENDOR", 0.1, SCOLS_FL_TRUNC, N_("device vendor") },
-       [COL_ZONED]  = { "ZONED", 0.3, 0, N_("zone model") },
-       [COL_DAX]    = { "DAX", 1, SCOLS_FL_RIGHT, N_("dax-capable device"), COLTYPE_BOOL },
-       [COL_START]  = { "START", 5, SCOLS_FL_RIGHT, N_("partition start offset"), COLTYPE_NUM },
+       [COL_WSAME] = { "WSAME", 6, SCOLS_FL_RIGHT, N_("write same max bytes"), COLTYPE_SIZE },
+       [COL_WWN] = { "WWN", 18, 0, N_("unique storage identifier") },
+       [COL_ZONED] = { "ZONED", 0.3, 0, N_("zone model") },
 };
 
 struct lsblk *lsblk;   /* global handler */