Вместо dd я создал новый том. Больше шагов, но они могут исправить проблемы, а не копировать их. У меня был слишком маленький /boot, который был поврежден. Я также использовал cento7 с grub2. Поэтому мои инструкции потребуют некоторых корректировок или обновления до grub2, как предложил psusi. Я попытался отметить изменения.
ПРИМЕЧАНИЕ. :Когда я использую «/dev/sdx», я предполагаю, что вы знаете, что «sdx» нужно изменить на любое имя диска/тома, которое вы хотите использовать как /boot.
ссылки :http://www.ocztechnologyforum.com/fo...226#post373226http://www.patriotmemory.com/forums/...ead.php?t=3696http://thunk.org/tytso/blog/2009/02/...se-block-size/https://ubuntuforums.org/showthread.php?t=1528529https://wiki.centos.org/HowTos/Grub2
Вот возможный простой способ, основанный на предположении, что заголовки точно такие, как вы указали, а данные начинаются с строки 8
Начиная с первой строки данных, добавляйте значения к выходным данным с хорошим форматированием
awk -F" :" '/^X _COR/ { x=$2 } ; /^Y _COR/ { y=$2 } ; /^DATUM/ { d=$2 } ;NR>7 { print sprintf ("% -20s % -10d % -10d % -10d", $0,x,y,d )}' Ваш входной файл
Вы можете изменить номер строки и форматирование, если они отличаются от вашего примера
Использование прямой копии поста OP и использование только одного набора заголовков для каждого файла
awk -F":" '$2+0{a=a"\t"$2}$1~/[^0-9. ]+$/{print $0a}' file1
0 0 258524 225898 874
1 7 258524 225898 874
2 16 258524 225898 874
3 20 258524 225898 874
Перерыв на:
если $2
является числовым, $2+0
истинным, то это x, y или z, поэтому составьте его в строку по мере продвижения
В противном случае, если $1
содержит числа $1~/^[0-9. ]+$/
, это данные, поэтому выведите их вместе с составной строкой
$ awk 'NR>1 && NR<5{h=h OFS $NF} NR>7{print $0 h}' file
0 0 258524 225898 874
1 7 258524 225898 874
2 16 258524 225898 874
3 20 258524 225898 874
или, может быть, это больше похоже на то, что вы хотите сделать, например. если заголовки могут быть в разном порядке ввода, но вы хотите установить определенный порядок вывода:
$ awk '/:/{f[$1]=$NF} NR>7{print $0, f["X_COR"], f["Y_COR"], f["DATUM"]}' file
0 0 258524 225898 874
1 7 258524 225898 874
2 16 258524 225898 874
3 20 258524 225898 874