Как я могу перечислить все доступные команды встроенной оболочки?

9

Мы знаем, что bash поддерживает число команд buitin , таких как:

$ type type cd help command
type is a shell builtin
cd is a shell builtin
help is a shell builtin
command is a shell builtin

Я хочу получить список всех доступных встроенных команд оболочки . Как это сделать с помощью командной строки?

    
задан Pandya 18.08.2014 в 13:12
источник

5 ответов

13

От типа терминала:

help

От help help :

Display information about builtin commands.
    
ответ дан karel 18.08.2014 в 13:15
источник
9

Вы можете использовать compgen -b из оболочки bash, чтобы получить список встроенных команд оболочки.

    
ответ дан steeldriver 18.08.2014 в 14:36
6

В качестве альтернативы вы можете отображать команду enable : (Ответы как @ karel, так и @ steeldriver работают нормально.)

enable -a | cut -d " " -f 2,3

Если какая-либо встроенная функция отключена, она отображается с помощью -n in out.

Пример вывода:

$ enable -a | cut -d " " -f 2,3
.
:
[
alias
bg
bind
break
builtin
caller
cd
command
compgen
complete
compopt
continue
declare
dirs
disown
echo
enable
eval
exec
exit
export
false
fc
fg
getopts
hash
help
history
jobs
kill
let
local
logout
mapfile
popd
printf
pushd
pwd
read
readarray
readonly
return
set
shift
shopt
source
suspend
test
times
trap
true
type
typeset
ulimit
umask
unalias
unset
wait
    
ответ дан Pandya 19.08.2014 в 12:20
1

Просто введите терминал:

  
    

человек bash

  

Это откроет руководство по bash. Прокрутите вниз, вы найдете COMMANDS SHELL BUILTIN COMMANDS . Здесь вы можете узнать обо всех встроенных командах и о том, что они делают.

    
ответ дан Ujjwal Gupta 30.01.2018 в 20:37
0

Для тех, кто ненавидит внешние внешние двоичные файлы просто для форматирования / извлечения данных:

while read -r _ cmd ; do echo $cmd ; done < <(enable -a)
    
ответ дан Nicola Worthington 20.09.2016 в 22:09