Устранение неоднозначности слова «команда» в Linux

Сообщение «порядок загрузки системы не найден» заставляет меня предположить, что в системе, вероятно, используется UEFI вместо традиционного BIOS. Это важное различие :меняет многое в процедуре ранней загрузки.

Попробуйте ввести fwsetupв приглашение GRUB :, если это UEFI-версия GRUB, эта команда должна привести к перезагрузке системы с настройками UEFI (, также известными как «доступ к BIOS» ).

Если вы перейдете к настройкам порядка загрузки, там может быть загрузочная запись с именем, например «Диспетчер загрузки Windows» :, переместите ее на первое место в порядке загрузки. Этого должно быть достаточно, чтобы перейти к Windows.

12
24.06.2021, 23:05
3 ответа

Довольно простое решение(и стандартная философская и лингвистическая уловка)состоит в том, чтобы различать Использование слова команда и Упоминание слово команда . Например, определенные слова выполняют действия даже в обычном английском языке, и их использование зависит от того, как они это делают. Если вы скажете «Да» при соответствующих обстоятельствах, вы можете, например, жениться. Но не в том случае, если вы цитируете то, что может сказать кто-то другой. Все цитируемое является Упоминанием, а не Использованием.

Таким образом, первый список команд не является использованием команд; это упоминания о командах.

Второй пример, как мой любимый

  • $ rev wordlist | sort | rev > speculum
    (, который создает обратную -алфавитную копиюwordlist)

на самом деле что-то сделает, так что они определенно Используют.

1
28.07.2021, 11:22

POSIX относится к вещам, похожим на grepи cd, как к "утилитам " , а резервирует " команду " для инструкции . При последовательном использовании эти термины недвусмысленны.


Для рассмотрения ваших дел по очереди

  1. «Исполняемая программа, такая как grep (или встроенная оболочка -, такая как cd )» является утилитой:

    Utility A program, excluding special built-in utilities provided as part of the Shell Command Language, that can be called by name from a shell to perform a specific task, or related set of tasks.

    Который дополнительно поясняется:

    The system may implement certain utilities as shell functions or built-in utilities

    , чтобы было ясно, что это включает в себя обычные утилиты, такие как true, которые обычно встречаются как встроенные оболочки.

    Формально «специальные построенные -в инженерных сетях » отделены от инженерных сетей, не указанных далее; это такие вещи, как break, ., eval, setи trap, которые влияют на внутреннее состояние оболочки, но они не включают cd, что является регулярные встроенные -. Помимо нюансов спецификации (поведение присваивания некоторых переменных отличается, и они недоступны с execvp), «полезность» достаточна для охвата обеих категорий на уровне пользователя. Статьи синтаксиса оболочки, такие как ifи while, вообще не являются утилитами.

  2. «Полнотекстовая строка, отправляемая в оболочку для выполнения, например grep com /etc/hosts» — это команда :

    Command A directive to the shell to perform a particular task.

    Команды включают простые команды, такие как grep com /etc/hosts, конвейеры и составные команды, такие как конструкции ifи группирующие команды с помощью (... ), но слово «команда» никогда не относится к самой утилите. Внутри команды может появитьсяимя команды , которое идентифицирует утилиту или функцию :имя команды в grep com /etc/hostsgrep, ссылаясь на утилиту grep .


Использование слова «команда» в просторечии для обозначения полезности или функции может быть устранено контекстом, но формальное значение относится только к инструкции. Если требуется полное избежание двусмысленности,вы можете последовательно использовать «утилиту» и «команду» для этих двух ролей.

Вы, вероятно, не можете ожидать, что пользователи сами будут проводить это различие, поэтому поисковые -оптимизированные для движка -статьи «10 лучших команд Linux», вероятно, делают правильный выбор для своих поощрений.

17
28.07.2021, 11:22

Я бы посчитал нет необходимости в качестве ответа, так как описанная двусмысленность в любом случае не причиняет вреда.

Во всех контекстах, которые я видел, когда слово «команда» относится к исполняемой программе, это всегда что-то, что конечный пользователь должен ввести в оболочку, чтобы запустить ее. Я никогда не встречал таких выражений, как «команда init» или «команда ld-linux.so».

Когда «команда» относится к командной -строке программы,на самом деле это всегда относится к «семейству команд, которое начинается с указанной программы». Например, когда вы говорите «команда grep», вы говорите обо всем, что вы можете сделать с помощью программы grep, которая образует «семейство команд». Это относится и к частичным командам, например, к высказыванию «команда apt installпредназначена для установки пакетов », когда полная команда apt installобычно не делает ничего полезного.

1
28.07.2021, 11:22

Теги

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