Что делает запуск «builtin»? [дубликат]

На этот вопрос уже есть ответ здесь:

Простой вопрос, правда .. .

Builtin?

Что происходит, когда вы запускаете: builtin ?

Тип возврата из echo $? - 0 .

Это означает, что команда, скорее всего, выполнена успешно.

Итак, что выполняет запуск builtin ?

2
задан 20 November 2018 в 00:10

2 ответа

Это полезно, когда Вы хотите повторно реализовать оболочку, встроенную как функция оболочки, но должны выполнить встроенное в функции.

$ type echo
echo is a shell builtin

$ function echo(){ builtin echo "'$1'"; }

$ echo hi
'hi'
<час>
help builtin 

встроенный: встроенный [встроенный оболочкой [аргумент...]] Выполняют оболочку builtins.

Execute SHELL-BUILTIN with arguments ARGs without performing command
lookup.  This is useful when you wish to reimplement a shell builtin
as a shell function, but need to execute the builtin within the function.

Exit Status:
Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is
not a shell builtin.
5
ответ дан 2 December 2019 в 01:36

От help -m builtin:

NAME
    builtin - Execute shell builtins.

SYNOPSIS
    builtin [shell-builtin [arg ...]]

DESCRIPTION
    Execute shell builtins.

    Execute SHELL-BUILTIN with arguments ARGs without performing command
    lookup.  This is useful when you wish to reimplement a shell builtin
    as a shell function, but need to execute the builtin within the function.

использование В качестве примера:

cd (){
    builtin cd "$@"
    pwd
}

Это cd, затем печатает новый рабочий каталог (как в IPython). Если Вы забудете builtin часть, то это будет продолжать называть себя в бесконечном цикле.

2
ответ дан 2 December 2019 в 01:36

Другие вопросы по тегам:

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