В вашем примере sed
удается:
sed '/^.\{216\}$/!N;s/./?/59' file
Адрес /^.\{216\}$/!
выполняет следующую команду в строках, которые не имеют необходимой длины в 216 символов. В этом случае мы предполагаем, что строка разделена, поэтому N
считывает оставшуюся часть строки.
Затем команда s
заменяет 59-й символ этой записи (либо *
, либо новую строку знаком вопроса (измените это, как вам нужно ).
Это работает для вашего примера, но я не уверен, что некоторые другие случайные байты или многобайтовые символы -сломают сценарий.
Итак, если sed
не работает во всех случаях, используйте хороший инструмент под названием bbe
, который идеально подходит для обработки записей фиксированной -длины, включая двоичные данные:
bbe -b ":219" -e 'r 58 ?' file
-b ":219"
определяет размер блока как 219 (, включая новую строку и многобайтовый -символ ), а r 58 ?
заменяет байт по смещению 58 (, так что это 59-й символ )со знаком вопроса.
как починить grub? Первое, что вам нужно сделать, это загрузиться с kali linux live ISO. После этого поместите в Gparted, чтобы вы могли видеть путь, по которому была установлена kali :, обычно это файловая система, заканчивающаяся на ext4, в зависимости от файловой системы, которую вы использовали во время установки. На моем компьютере система Kali linux была в sda3, но в разных системах она разная. теперь вы можете запустить этот код:
mount /dev/sda3 /mnt mount --bind /dev /mnt/dev mount --bind /dev/pts /mnt/dev/pts mount --bind /proc /mnt/proc mount --bind /sys /mnt/sys chroot /mnt grub-install /dev/sda update-grub exit umount /mnt/dev/pts umount /mnt/dev umount /mnt/proc umount /mnt/sys umount /mnt
Это восстановит старый загрузчик kali linux, однако вам придется загрузиться в kali linux live. IOS должна быть отключена, чтобы добавить окна в загрузчик. первый раз загрузился, теперь вы можете запустить этот код:
os-prober update-grub
... и это все. Я хочу, чтобы это могло помочь вам.
Вы не можете установить Kali и MS Windows на один и тот же раздел. Как комментарий roaima, вам нужно восстановить резервную копию (, надеюсь, она у вас есть ).
Однако вам придется уменьшить размер существующего раздела Windows, чтобы освободить место для установки Kali Linux на новый раздел. Используйте GParted из Kali live ISO или просто используйте диспетчер разделов Microsoft. Затем используйте новый раздел для установки Kali и переходите к следующим шагам по настройке grub и т. д.