Вы собираетесь выполнять сортировку по столбцу 7 в числовом виде.
Это можно сделать с помощью
$ sort -n -k 7 file
id - 884209, researchers - 1
id - 904091, researchers - 1
id - 905525, researchers - 1
id - 916197, researchers - 1
id - 896781, researchers - 4
id - 908660, researchers - 5
id - 908876, researchers - 7
id - 910480, researchers - 10
id - 901026, researchers - 15
или с
$ sort -k 7n file
id - 884209, researchers - 1
id - 904091, researchers - 1
id - 905525, researchers - 1
id - 916197, researchers - 1
id - 896781, researchers - 4
id - 908660, researchers - 5
id - 908876, researchers - 7
id - 910480, researchers - 10
id - 901026, researchers - 15
Они эквивалентны.
Опция -n
задает числовую сортировку (в отличие от лексикографической сортировки ). Во втором примере выше n
добавляется в качестве спецификатора/модификатора конкретно к 7-му столбцу.
Спецификация столбца ключа сортировки, -k 7
, заставит sort
сортировать строки в столбце 7 и далее (строку от столбца 7 до конца ). В этом случае, поскольку столбец 7 является последним, имеется в виду только этот столбец. Если бы это имело значение, вы могли бы использовать -k 7,7
вместо ("от столбца 7 до 7" ).
Если два ключа при сравнении равны, sort
будет использовать полную строку в качестве ключа сортировки, поэтому мы получили результат, который мы получили для первых четырех строк в вашем примере. Если бы вы хотели выполнить вторичную сортировку по второму столбцу, вы бы использовали sort -n -k 7,7 -k 2,2
или sort -k 7,7n -k 2,2n
(, указав тип сравнения отдельно для каждого столбца ). Опять же, если 7-й и 2-й столбцы сравнивают одно и то же между двумя строками, sort
использовал бы лексикографическое сравнение полных строк.
Для численной сортировки по позиции 29 символа, которая соответствует первой цифре числовых значений в конце каждой строки в ваших примерных данных:
$ sort -k 1.29n file
id - 884209, researchers - 1
id - 904091, researchers - 1
id - 905525, researchers - 1
id - 916197, researchers - 1
id - 896781, researchers - 4
id - 908660, researchers - 5
id - 908876, researchers - 7
id - 910480, researchers - 10
id - 901026, researchers - 15
-k 1.29n
означает «сортировать по ключу, заданному 29-м символом 1-го поля(и далее, до конца строки ), численно».
-k 7,7n
, использованное в тексте выше, просто эквивалентно -k 7.1,7.1n
.
Вы не можете указать 1
в качестве первого сектора раздела для диска с разделами GPT.
См.
для получения дополнительной информации.
The reason of first usable LBA being 34 is simple. LBA 0 is Protective MBR, LBA 1 is GPT Header and the required space for partition entries are:
128 partition * 128 bytes/partition / 512 bytes/block = 32 blocks
128 partition * 128 bytes/partition / 512 bytes/block = 32 blocks So 1 + 1 + 32 = 34 blocks are needed to store all GPT information, so first usable LBA can be minimum 34. As you might realize, these numbers change if the logical sector size (LBA block size) is not 512 bytes.
При использовании следует использовать наименьшее значение, разрешенное fdisk.