当前位置: 首页 > 科技观察

如何列出所有BashShell内置函数

时间:2023-03-16 13:20:51 科技观察

内置函数包含在bashshell本身中。如何在不阅读冗长的bash手册页的情况下列出Linux/AppleOSX/*BSD/类Unix操作系统上的所有内置bash命令?shell内置函数是从shell调用的命令或函数,直接在shell中执行。bashshell直接执行命令而不调用另一个程序。您可以使用help命令查看Bash内置命令的相关信息。以下是几种不同类型的内置命令。内置命令的类型BourneShell内置命令:内置命令继承自BourneShell。BashBuiltins:Bash特定的内置函数表。修改Shell行为:修改Shell属性和可选行为的内置命令。Specialbuiltincommands:POSIX专门分类的内置命令。如何查看所有bash内部设置命令有以下的命令:$help$help|少$帮助|grepread示例输出:GNUbash,version4.1.5(1)-release(x86_64-pc-linux-gnu)这些shell命令是内部定义的。输入`help'来查看这个列表。输入`helpname'来查找更多关于函数`name'的信息。使用`infobash'来查找关于shell的更多信息。使用`man-k'或`info'以查找有关不在此列表中的命令的更多信息。名称旁边的星号(*)表示该命令已禁用。job_spec[&]history[-c][-doffset][n]orhist>((expression))ifCOMMANDS;然后命令;[elifC>。文件名[arguments]jobs[-lnprs][jobspec...]或jobs>:kill[-ssigspec|-n符号|-sigs>[arg...]letarg[arg...][[表达式]]local[option]name[=value]...alias[-p][name[=value]...]logout[n]bg[job_spec...]mapfile[-ncount][-Oorigin][-sc>bind[-lpvsPVS][-mkeymap][-ffilen>popd[-n][+N|-N]break[n]printf[-vvar]format[arguments]内置[shell-builtin[arg...]]pushd[-n][+N|-N|dir]调用者[expr]pwd[-LP]caseWORDin[PATTERN[|PATTERN]...)>read[-ers][-aarray][-ddelim][->cd[-L|-P][dir]readarray[-ncount][-Oorigin][-s>command[-pVv]command[arg...]readonly[-af][name[=value]...]或>compgen[-abcdefgjksuv][-ooption]>return[n]complete[-abcdefgjksuv][-pr][-DE]>选择NAME[inWORDS...;]doCOMM>compopt[-o|+ooption][-DE][name..>set[--abefhkmnptuvxBCHP][-ooption>continue[n]shift[n]coproc[NAME]command[redirections]shopt[-pqsu][-o][optname...]declare[-aAfFilrtux][-p][name[=val>sourcefilename[arguments]dirs[-clpv][+N][-N]suspend[-f]disown[-h][-ar][jobspec...]test[expr]echo[-neE][arg...]时间[-p]管道启用[-a][-dnps][-f文件名][na>timeseval[arg...]trap[-lp][[arg]signal_spec...]exec[-cl][-aname][command[argume>trueexit[n]type[-afptP]name[name...]export[-fn][name[=value]...]orex>排版[-aAfFilrtux][-p]名称[=val]][mode]fg[job_spec]unalias[-a]name[name...]forNAME[inWORDS...];执行COMMAND>unset[-f][-v][name...]for((exp1;exp2;exp3));执行COMMAN>直到COMMANDS;执行命令;完成函数名称{COMMANDS;}或name>variables-名称和平均值ingsofso>getoptsoptstringname[arg]wait[id]hash[-lr][-ppathname][-dt][name>whileCOMMANDS;执行命令;donehelp[-dms][pattern...]{COMMANDS;另一种选择是使用以下命令:compgen-bcompgen-b|更多要查看有关Bash内置命令的信息,请运行:helpcommandhelpread要获取所有内置命令的列表(仅包含简短描述),请执行:$help-d以查找内置命令的语法和其他选项使用以下语法来查找有关相关内容的更多信息内置:帮助名称帮助cd帮助fg帮助阅读帮助:示例输出::::Null命令。没有效果;该命令什么都不做。退出状态:总是成功要查明命令是内部(内置)还是外部命令,请使用type命令或命令命令:type-acommand-name-heretype-acdtype-aunametype-a:type-als或:键入-acduname:lsuname示例输出:cd是一个shellbuiltinuname是/bin/uname:是一个shellbuiltinls是`ls--color=auto'ls的别名是/bin/lsl是一个functionl(){ls--color=auto}或者:command-Vlscommand-Vcdcommand-VfooViewlistbashbuilt-inscommandinfoonLinuxorUnix