Установщик Fedora имеет шаг, на котором можно изменить и изменить размер разделов с подобным GParted интерфейсом.
Можно принять решение иметь Fedora, переустанавливают загрузчик GRUB, перезаписывая существующий из Ubuntu. После этого GRUB будет иметь записи и для Fedora и для Ubuntu, когда Вы перезагрузите.
Я думаю, что он лучше всего понимать на выходе ECHO $ (ECHO '\\')
(т.е. вариант без внешних цитат), что приводит к \\
. Дело в том, что нет литеральной строки интерпретации обратной косочетания (Es), когда сущность замены команд $ (...)
расширена. (Это похоже на случай, если у вас есть эвакуальные символы, хранящиеся в строках; не будет перепроверка в качестве буквальной строки.)
Это больше связано с цитированием,
$ echo '\'
\
$ echo '\\'
\\
$ echo "\\"
\
с одиночными цитатами, что бы ни было между цитатами, повторяется. С двойными кавычками, оболочка смотрит внутрь и делает обработку.
В команде, подстановка которой ограничена $(...)
, то, что находится внутри скобок, разбирается так же, как и команда верхнего уровня (за исключением нескольких угловых случаев с несбалансированными закрывающимися скобками). То, что внутри круглых скобок - это обычный фрагмент оболочки, никакого дополнительного расширения обратного слеша не делается.
Команда echo '\\'
печатает три символа: два обратных слеша и новую строку (в предположении, что команда echo
не выполняет расширение обратного слеша). Поэтому результатом подстановки команды $(echo '\\')
является двухсимвольная строка \\
(окончательная новая строка удаляется, при подстановке команды это всегда так). Так как вы использовали подстановку команды внутри двойной кавычки, никакое другое расширение не выполняется: результирующая часть слова - \\
.
В echo "$(echo '\')$"
, подстановка команды выводит одиночный обратный слеш. Ее вкладом в аргумент echo
является строка \
. За следующим $
следует символ, который не может запустить имя параметра, поэтому он расширяется до самого себя. Таким образом, аргументом для эха является двухсимвольная строка \$
. Двухсимвольные строки больше не расширяются, нет ничего, что могло бы вызвать интерпретацию обратного слеша как специального символа (за исключением некоторых вкусов команды echo
).
Вы можете просмотреть полные правила расширения в руководствах оболочки и другой документации, с различной степенью (un)читабельности. Спецификация POSIX не так уж и плоха, как идут стандарты (слабая похвала).
P.S. Как обеспечить, чтобы строка, интерполированная в `sed` замену, ускользала от всех метачаров