Для этого используйте awk
:
awk -F\| '{gsub(" ","\\&",$3); gsub(" ","\\&",$5)}1' OFS=\| infile.txt
-F\|
, сообщая 'awk', что поля ограничены |
вертикальной чертой (экранированы \
для оболочки, не интерпретируют это как pipeline stdin
, мы могли бы использовать -F"|"
или либо-F'|'
).
Синтаксис gsub("regexp","replacement"[, INDEX])
, используемый для замены" "
(пробела )литералом &
в индексе (, столбце)$3
и $5
, ниже показывает каждую позицию индекса на основе разделителя |
.
a a|b b|c c|d d|e e
^^^|^^^|^^^|^^^|^^^
$1 |$2 |$3 |$4 |$5
Подробнее о почему мы сбежали \\&
туда и два раза?!
Что такое 1
используется в конце в awk '{...}1'
? это элемент управления действиями awk по умолчанию для печати. подробнее
Команда OFS=\|
снова возвращает или печатает поля с указанным разделителем |
.
Загрузочная система UEFI ищет системный раздел EFI (ESP ), и ей наплевать на остатки старого загрузчика BIOS.
На самом деле, вы можете сделать так, чтобы загрузчик grub BIOS указывал на один и тот же файл grub.cfg
, и система загружалась как в режиме UEFI, так и в режиме BIOS.
Можно загрузить Ubuntu в обоих режимах загрузки с обеими таблицами разделов, старой таблицей разделов MSDOS (MBR )и новой таблицей разделов GUID (GPT ). (Но Windows загружается только в режиме BIOS с таблицей разделов MSDOS и только в режиме UEFI с таблицей разделов GUID.)
См. следующие ссылки,
help.ubuntu.com/community/Installation/iso2usb/diy
help.ubuntu.com/community/DiskSpace
Подробная информация о загрузке с grub в режимах UEFI и BIOS