文章目录
BASH 中文文档
3 Shell内部命令
内部命令是由shell自身提供的。
3.1 波恩shell的内部命令
:(逗号)
除了扩展参数和执行重定向不做任何操作,返回状态是零。
.(点号)
读取命令 和source等价
break
从for,while,until,select循环中退出
cd
切换工作目录
continue
继续执行for,while,until,select的下一次循环
eval
把参数表里的参数连在一起形成一个命令,然后读取并执行该命令
exec
后面如果指定了命令,则取代当前shell(不创建新的进程)
exit
退出shell
export
把每个名称传到子进程环境中,临时全局化变量
getopts
分析位置参数
hash
记住参数名称所指定的命令的完整路径,使得以后再启动这个命令时不需要再搜索它。
pwd
打印当前路径
readonly
把每个名称标志只读
return
使得shell函数退出并返回状态n
如果没指定n,则返回状态是函数中最后一个被执行的命令的退出状态。
shift
把位置参数向左移动n个位置,位置参数n+1
n如果比$#大或者为0,则位置不改变
n如果没指定,则为1
test和[
计算条件表达式的值
! 表达式 ,否
(表达式) ,返回表达式的值
表达式一 -a 表达式二 ,如果表达式一和表达式二都为真,则返回为真
表达式一 -o 表达式二 ,如果表达式一或者表达式二有一个为真,则返回为真
times
打印出shell及其子进程所使用的用户时间和系统时间
tarp
当shell接受到信号指示中的信号时,就会读取和执行参数中指定的命令
-p 打印
-l 列出名称
umask
把shell进程的文件创建掩码设为模式,umask输入默认掩码
umask -S 以rwx形式输出
unset
删除各个指定的变量或函数名称
-v 变量
-f 函数
3.2 Bash的内部命令
alias
打印别名
bind
显示当前Readline中键和功能函数的绑定,或者把键序列绑定到Readline函数或宏,或者设置Readline变量
-m 键映射 可绑定后面使用的键映射,
可用的键映射名称:emacs、emacs-standard、emacs-meta、emacs-ctlx、vi、vi-move、vi-command、vi-insert
-l 列出所有Readline函数名称
-f文件名 ,从文件名中读取键绑定它
-u 取消绑定
-r 删除绑定
builtin
builtin [shell 内部命令[参数表]]
运行一个shell内部命令,把参数表传给它,并返回它的退出状态
caller
caller[表达式]
返回当前活动的子程序调用
即shell函数,内部命令.、source
command
command[-pVv]命令[参数表...]
把参数传给命令并执行这个命令,而忽略与之同名的shell函数
command ls
declare
declare [-aAfFilrtux] [-p] [名称[=值]...]
声明变量并设置其属性
如果没给定名称,则显示变量的值
echo
echo [-neE] [参数…]
输出每个参数
enable
enable [-a] [-dnps] [-f 文件名] [名称...]
启用或禁止shell内部命令
help
显示内部命令的帮助信息
let
let 表达式 [表达式]
可以对shell变量进行算术运算
local
对于每个参数名称都创建一个局部变量并给它赋值
logout
退出登录
mapfile
从标准输入读取文本行并存入数组变量数组中;
如果给定了-u,则从文件描述符中读取
printf
在标准输出中打印格式化后的参数表
read
-p提示符 在试图读取输入之前显示提示符
readarray
从标准输入读取文本行并存入数组变量数组中
和mapfie同义
source
和.同义
type
-p
typeset
已经被declare取代
ulimit
控制由shell启动并提供给进程的资源
-S 更改并报告与资源相关联的软限制。
-H 更改并报告与资源相关联的硬限制。
-a 报告当前的所有限制。
unalias
去除别名