Думаю, я понял ваши ожидания.
awk 'NR==FNR{s[$1]++;next}
(s[$1]>1){ printf("%2d. %s\n",FNR,$0)
}' infile infile
1. A another_column ...
3. C ...
4. C ...
5. D ...
7. A ...
9. D ...
10. D ...
Если вы не хотите, чтобы в результате отображался номер записи, используйте следующую команду:
awk 'NR==FNR{s[$1]++;next} (s[$1]>1)' infile infile
A another_column ...
C ...
C ...
D ...
A ...
D ...
D ...
Раздел может иметь тип . Тип раздела — это подсказка, например, «этот раздел предназначен для выполнения определенной функции». Многие типы разделов связаны с определенными файловыми -системами, хотя эта связь не всегда является строгой или однозначной. Вы можете ожидать, что раздел типа 0x07 будет иметь совместимую с Microsoft файловую систему -(, например. FAT, NTFS или exFAT )и 0x83, чтобы иметь собственную файловую систему Linux -(, например. доб2/3/4 ).
Создание файловой -системы действительно является совершенно независимым и ортогональным шагом (вы можете поставить любую файловую -систему куда хотите — только не ждите, что все заработает «из коробки» ).
parted
определяет раздел как «часть всего диска». На самом деле не нужно знать тип раздела (, параметр является необязательным ). Однако при использовании автоматическое -определение файловой системы -и в дальнейшем автоматическое монтирование -могут работать неправильно, если тип раздела не соответствует файловой системе -.
Раздел — это строго линейный участок памяти. mkfs.ext4
и его варианты создают файловые -системы, поэтому у вас может быть фактическое дерево каталогов, в котором вы можете удобно хранить именованные файлы.
mkfs.something
создает файловую систему на уже существующем разделе. В вашем случае это:
/dev/sda
ext4
datapartition
Но :Ничто из этого не сработает, если
ext4
. Тип раздела «сообщает» системе, какие типы файловой системы()можно использовать на разделе. Установка типа раздела не создает файловую систему, она только сообщает, что некоторые типы файловых систем возможны. Например, тип раздела 0x83 предназначен для типов файловых систем ext2, ext3, ext4, btrfs,..., но не для fat, ntfs,... Причина, по которой вы сначала запускаете parted
, заключается в том, что вы хотите выполнить работу, которую не выполнил mkfs.ext4
. В вашем случае он создает раздел на /dev/sda
и устанавливает тип на что-то, что поддерживает ext4
. Теперь у вас есть все необходимое для запускаmkfs.ext4
Вы могли заметить, что у parted
было много вариантов. В вашем случае эти параметры сообщают parted
, чтобы убедиться, что таблица разделов настроена для оптимального расположения на диске, что раздел должен заполнять весь диск и должен быть первичным, а не логическим разделом. Причины такого выбора - совсем другой вопрос. Совершенно нормально делать другие выборы, но сделанные выборы действительно являются «разумными» вариантами для многих случаев использования