Использование символа дефиса / тире «-» в Linux bash / dir + загрузка GRUB

-

Вы не говорите, какую оболочку вы используете. Судя по поведению, которое Вы описываете, скорее всего zsh. Если вы посмотрите на его man-страницу, вы заметите, как обрабатываются перенаправления.

Обратите внимание, что труба - это неявное перенаправление; таким образом

 cat bar | сортирует 

эквивалентно cat bar foo | sort (обратите внимание на порядок входов).

В противном случае, регулярное поведение, например, что одно из bash заключается в том, что каждое перенаправление заменяет предыдущее перенаправление для этого файлового дескриптора.

zsh man page продолжается:

Если опция MULTIOS не установлена, то каждое перенаправление заменяет предыдущее перенаправление для этого файлового дескриптора. Однако, все файлы переадресованные на фактически открытые, так что

 echo foo > bar > baz

когда MULTIOS не установлен, усекает бар и записывает ''foo'' в baz.

-1
19.10.2018, 06:25
1 ответ

Последовательность команд, которые вы даете клонам личинка репозиторий, изменяет текущий каталог на тот недавно созданный на мерзавец ( личинка CD ), создает личинка , изменяет каталог на ядро личинки и работает личинка-mkimage исполняемый файл, который находится в родительском каталоге.

более явно, если вы начинаетесь в своем корневом каталоге (я предположу, что это /home/evan):

  • клон мерзавца... создает новый каталог, /home/evan/grub и клоны личинка репозиторий в нем;
  • личинка CD изменения каталог к /home/evan/grub;
  • следующие три сборки команд личинка ;
  • ядро личинки CD изменения каталог к /home/evan/grub/grub-core ;
  • ./grub-mkimage... попытки работать личинка-mkimage команда, сохраненная в /home/evan/grub (текущий каталог остается /home/evan/grub/grub-core ).

. просто означает, что родительский каталог, ./grub-mkimage означает, "работает личинка-mkimage , который находится в родительском каталоге". В точке, где команда выполняется, текущий каталог /home/evan/grub/grub-core , и родительский каталог /home/evan/grub.

я выполнил команды, которые вы упомянули выше, и сборка хорошо работала для меня: ./grub-mkimage... создал ожидаемый файл bootia32.efi .

, Чтобы "повторно инициировать" команду, я сказал бы, что самый простой путь к вам состоит в том, чтобы удалить личинка каталог и запуститься, от клон мерзавца вперед.

1
28.01.2020, 05:11

Теги

Похожие вопросы