Новый псевдоним, недоступный после;

До сих пор я думал, что точка с запятой в оболочке (каким-то образом) имеет то же значение, что и разрыв строки. Поэтому я был удивлен тем, что для

alias <name>=<replacement text>; <name> 

<name> неизвестно, пока оно известно в следующей строке. csh , tcsh , sh , ksh и bash ведут себя одинаково. По крайней мере, для csh не имеет значения, используется ли псевдоним напрямую или если скрипт получен до семхлолона – псевдонимы не известны ; но они известны в следующей командной строке. Это ошибка или это поведение предназначено?

  • Совместное использование псевдонимов и настроек PATH между zsh и bash
  • Ошибка анализа zsh после псевдонима do = ...
  • Bash: Как перенаправить вывод каждой команды в файл?
  • Как получить, чтобы показывать псевдонимы?
  • postfix default alias используется, даже если у меня есть другие псевдонимы
  • установить псевдоним для каталога
  • Команда работает в оболочке bash, но не в псевдониме
  • Как поменять две команды в bash?
  • 2 Solutions collect form web for “Новый псевдоним, недоступный после;”

    Синтаксис псевдонима, который вы используете, не подходит для оболочки POSIX, для оболочки POSIX вам необходимо использовать:

     alias name='replacement' 

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

    Прежде чем выполнить настройку псевдонима, вся строка была прочитана синтаксическим анализатором, и по этой причине ваша командная строка не будет работать.

    Если псевдоним появится в следующей командной строке, он будет работать.

    Это поведение предназначено и задано POSIX под псевдонимом Substitution .

    Псевдоним был заменен сразу после того, как оболочка выполнила распознавание токена и до применения любых правил грамматики . В то время, когда вы вызвали псевдоним <name> , alias команды не был выполнен.

    Interesting Posts

    Возможно ли войти в систему с пользователем, созданным для таких программ, как apache или postgreSQL?

    Поиск файлов на основе измененной даты (с указанием точного часа)

    Инструмент lshw и возвращаемые параметры и их значения

    Отслеживание использования огромного буфера в Linux

    Обновление Synaptic: следует ли принимать изменения в файлы системной конфигурации, такие как / etc / lsb-release?

    ftp вариант для перезаписи файла, если разный размер

    Безопасное удаление каталога только в том случае, если оно не является точкой монтирования

    checkbashisms-совместимый способ определения текущей оболочки

    Авария Eclipse с Fedora 19

    установка платы radeon под debian

    Должен ли демон-демона самонадеянно себя зарекомендовать?

    Каталог доступа по дате изменения

    Инкрементное резервное копирование и восстановление резервных копий с использованием / rsync или rdiff-backup

    Выход Выход команды непосредственно в командную строку, НЕ переменную

    Как добавить несколько сетевых блоков в командной строке?

    Linux и Unix - лучшая ОС в мире.