Читая о том, как настроить grub
, я наткнулся на статью, утверждающую, что мне нужно использовать один из следующих двух синтаксисов:
echo \(hd0,0\) >> /boot/grub/grub.conf
или
echo '(hd0,0)' >> /boot/grub/grub.conf
потому что в командной строке скобки интерпретируются особым образом. Что особенного в скобках? Как они интерпретируются?
$()
а()
?$()
подстановка команд,()
это подоболочка. Они оба запускают команды, разница в том, что происходит с выводом. Имена гораздо легче искать, чем символы. См. Также unix.stackexchange.com/q/213530/9537Список команд, заключенный в скобки, работает как подоболочка.
Переменные в подоболочке не видны вне блока кода в подоболочке. Они не доступны для родительского процесса, для оболочки, которая запустила подоболочку. Это, по сути, локальные переменные.
Смотрите Linuxtopia - Глава 20. Подоболочки
источник