您的位置:首页 > 运维架构 > Shell

shell内置命令

2010-01-22 14:37 302 查看
shell有许多内置到它的源码中的命令。因为命令是内置的,shell无需到磁盘上定位它们,这样执行速度将快得多。 bash提供的help特性提供了所有内置命令的在线帮助。 内置命令
命 令
含 义
:
空命令。返回退出状态零
.
在当前进程的环境下执行程序。同source
.file
点命令读取并执行file里的命令
break
跳出最内层的循环
break

参见14.6节,“循环控制命令”
alias
为存在的命令列出并创建别名
bg
将一个作业放到后台
bind
显示当前键和函数的绑定,或将键和一个readline函数或宏绑定
builtin [sh-builtin [args]]
运行一个shell内置命令,给它传递参数并返回退出状态0。当一个函数和内置命令同名时很有用
(续表)
命 令
含 义
cd [arg]
如果没有参数,就将目录改变到主目录或改变到参数的值
command command [arg]
运行一个命令,当有一个函数和它同名时,忽略函数
continue

参见14.6节,“循环控制命令”
declare [var]
显示所有的变量或用可选属性声明变量
dirs
显示pushd产生的当前记录的目录
disown
从作业表中删除一个活动的作业
echo [args]
显示用换行符终止的参数
enable
开启和关闭shell内置命令
eval [args]
读参数作为shell的输入,并执行产生的命令
exec command
执行命令来取代当前的shell
exit

以状态n退出shell
export [var]
使var能被子shell识别
fc
用于编辑历史命令的历史编辑命令
fg
将后台作业放到前台
getopts
解析并处理命令行选项
hash
控制内部哈希表以更快地搜索命令
help [command]
显示关于内置命令的帮助信息,如果指定命令,将显示该内置命令的详细帮助
history
显示带行号的历史清单
jobs
列出放在后台的作业
kill [-singal process]
发送信号给指定PID号或作业号的进程。可在提示符下键入:kill –l
getopts
用于shell脚本以解析命令行并检查合法的选项
let
用来对算术表达式求值并将算术计算的结果赋给变量
local
用在函数中以限制变量在函数中的作用域
logout
退出登录shell
popd
从目录栈中删除项
pushd
往目录栈中添加项
pwd
显示当前工作目录
read [var]
从标准输入读取一行到变量var
readonly [var]
使变量var只读。不能被复位
return

从一个函数返回,n是返回的退出值
set
设置选项和位置参量。参见14.4节,“set命令和位置参量”
shift

向左移动位置参量n次
stop pid
终止PID号进程的执行
suspend
暂停当前shell的执行(如果是一个登录shell就不暂停)
(续表)
命 令
含 义
test
检查文件类型且测试条件表达式
times
为从该shell运行的进程显示所累积的用户和系统时间
trap [arg]

当shell接收到信号n(0、1、2或15)时执行参数
type [command]
打印命令的类型。例如,pwd是一个内置shell命令
typeset
和declare一样。设置变量并给它们属性
ulimit
显示并设置进程资源限度
umask [octal digits]
设置创建文件时关于文件属主、属组和其他用户执行权限的掩码
unalias
删除别名
unset [name]
删除变量值或函数
wait [pid#n]
等待后台PID号为n的进程返回并报告终止状态
内置变量即预定义变量。在 shell 中,预先定义了几个有特殊含义的 shell 变量,它们的值只能由 shell 根据实际情况进行赋值,而不能通过用户重新设置。所有预定义变量都由 $ 符和另一个符号组成,常用的 shell 预定义变量如下:

$#: 位置参数的数量。

$*: 所有位置参数的内容。

$?: 命令执行后返回的状态。

$$: 当前进程的进程号。

$!: 后台运行的最后一个进程号。

$0: 当前执行的进程名。

其中,$? 用于检查上一个命令执行是否正确。在 Linux 中,命令退出状态为 0 表示该命令正确执行,任何非 0 值表示命令出错。

$$ 变量常用作暂存文件的名称以保证暂存文件不会重复。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: