Update builtin.md
补充注意事项,修正格式。 可能随着enable的格式调整继续调整内容。 之前更新的文档有不符合当前格式的会逐步修改。
This commit is contained in:
parent
1f271386b1
commit
3d5f7de56f
|
|
@ -3,62 +3,54 @@ builtin
|
||||||
|
|
||||||
执行bash内建命令。
|
执行bash内建命令。
|
||||||
|
|
||||||
## 补充说明
|
## 概要
|
||||||
|
|
||||||
**builtin命令** 用于执行指定的bash内建命令,并返回内部命令的返回值。builtin命令在使用时,Linux中同名的外部命令及同名的shell函数失效。
|
|
||||||
|
|
||||||
### 语法
|
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
builtin(bash内建命令)(参数)
|
builtin [shell-builtin [arg ...]]
|
||||||
```
|
```
|
||||||
|
|
||||||
### 参数
|
## 主要用途
|
||||||
|
|
||||||
bash内建命令:指定需要执行的bash内建命令。
|
- 用于执行指定的bash内建命令。
|
||||||
|
- `builtin`命令调用的bash内建命令优先于同名的外部命令及同名的shell函数。
|
||||||
|
|
||||||
(可选)参数:传递给bash内建命令的参数。
|
## 参数
|
||||||
|
|
||||||
### 提示
|
shell-builtin(可选):要调用的bash内建命令。
|
||||||
|
|
||||||
**同名情况下的优先级顺序**
|
arg(可选):传递给bash内建命令的一到多个参数。
|
||||||
|
|
||||||
|
## 返回值
|
||||||
|
|
||||||
|
返回该内建命令执行的返回值,除非传递的不是bash内建命令或该内建命令被禁用。
|
||||||
|
|
||||||
|
## 例子
|
||||||
|
|
||||||
|
同名情况下的优先级顺序:
|
||||||
|
|
||||||
builtin 内建命令 > 函数 > 内建命令 > 外部命令
|
builtin 内建命令 > 函数 > 内建命令 > 外部命令
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
#!/bin/bash
|
# 关于外部命令优先级最高的情况请参考enable命令。
|
||||||
#此时内建命令优先使用
|
# 此时内建命令优先使用
|
||||||
echo "the Great Wall"
|
echo "the Great Wall"
|
||||||
#调用内建命令type,显示命令的类型
|
# 调用内建命令type,返回命令的类型(builtin)
|
||||||
type -t echo
|
type -t echo
|
||||||
#定义 echo 函数
|
# 定义 echo 函数
|
||||||
echo(){
|
echo(){
|
||||||
printf "123\n"
|
printf "123\n"
|
||||||
}
|
}
|
||||||
#此时同名函数优先使用
|
# 此时同名函数优先使用,显示(123)
|
||||||
echo
|
echo
|
||||||
|
# 调用内建命令type,返回命令的类型(function)
|
||||||
type -t echo
|
type -t echo
|
||||||
#此时内建命令优先使用
|
# 此时内建命令优先使用
|
||||||
builtin echo -e "backslash \\"
|
builtin echo -e "backslash \\"
|
||||||
```
|
```
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
#输出结果
|
# 执行shell内部指令,输出当前系统下的命令别名
|
||||||
the Great Wall
|
builtin alias
|
||||||
builtin
|
|
||||||
123
|
|
||||||
function
|
|
||||||
backslash \
|
|
||||||
```
|
|
||||||
|
|
||||||
内建命令的帮助信息请参考 'help' 命令
|
|
||||||
|
|
||||||
### 实例
|
|
||||||
|
|
||||||
使用builtin命令执行bash内建命令alias:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
builtin alias # 执行shell内部指令
|
|
||||||
alias cp='cp -i'
|
alias cp='cp -i'
|
||||||
alias l.='ls -d .* --color=tty'
|
alias l.='ls -d .* --color=tty'
|
||||||
alias ll='ls -l --color=tty'
|
alias ll='ls -l --color=tty'
|
||||||
|
|
@ -68,7 +60,11 @@ alias rm='rm -i'
|
||||||
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
|
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
|
||||||
```
|
```
|
||||||
|
|
||||||
上面的命令执行后,将输出当前系统下的命令别名。
|
### 注意
|
||||||
|
|
||||||
|
1. 该命令是bash内建命令,相关的帮助信息请查看`help`命令。
|
||||||
|
|
||||||
|
2. 如果要调用的内建命令被禁用了(包括`builtin`),那么执行会报错;关于禁用和启用内建命令请参考`enable`命令。
|
||||||
|
|
||||||
|
|
||||||
<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->
|
<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue