Для простого csv
без кавычек попробуйте это:
while IFS= read -r l; do
col1=$(printf '%s' "$l" | cut -d, -f1)
printf '%s,' "$col1"
printf '%s' "$l" | cut -d, -f2- | grep -o "[0-9]*" | sort -n | paste -sd,
done < file
Если вы хотите клонировать загрузочный диск, недостаточно клонировать раздел, вы должны клонировать весь диск, включая головную часть. Вы можете сделать это с помощью dd
с источником (и целью )как /dev/sdx
(, а не /dev/sdx1
, что клонирует раздел номер один, а не весь диск ).
Но использовать dd
таким образом рискованно, потому что он делает то, что вы говорите, без каких-либо вопросов, и очень легко указать на неверный диск и перезаписать ценные данные. По этой причине я предлагаю вам использовать инструмент клонирования с последней контрольной точкой, где вы можете дважды -проверить правильность настройки.
Простое клонирование должно работать при использовании таблицы разделов MSDOS и когда целевой диск «ни на один байт меньше», чем исходный диск. Если есть таблица разделов GUID, GPT и там разные размеры, то необходимо исправить резервную копию таблицы разделов в конце диска. Это делается автоматически, когда вы используете mkusb для клонирования или извлечения из образа. В противном случае вы можете использовать gdisk
, чтобы исправить это после клонирования.
Следующие ссылки могут оказаться полезными: