Bourne Shell 脚本/附录 A:命令参考
外观
Bourne Shell 提供大量内置命令,您可以在 shell 脚本中使用它们。下表概述了这些命令。
命令 | 描述 |
---|---|
: | 一个空命令,返回 0(真)退出值。 |
. file | 执行。指定文件中的命令被 shell 读取并执行。通常被称为“源代码”一个文件。 |
# | 忽略所有文本,直到行尾。用于在 shell 脚本中创建注释。 |
#!shell | 解释器提示。指示操作系统使用哪个解释器执行脚本。 |
bg [job] ... | 在后台运行指定作业(如果没有给出参数,则运行当前作业)。 |
break [n] | 退出循环。如果指定了一个数字参数,则退出 n 级循环。 |
case | 请参阅 Bourne Shell 脚本/控制流 |
cd [directory] | 切换到指定目录(默认值为 $HOME)。 |
continue [n] | 跳过循环中剩余的命令,并在下次迭代时继续循环。如果指定了一个整数参数,则跳过 n 个循环。 |
echo string | 将字符串写入标准输出。 |
eval string ... | 将所有参数用空格连接起来。然后重新解析并执行命令。 |
exec [command arg ...] | 在当前进程中执行命令。 |
exit [exitstatus] | 终止 shell 进程。如果给出了 exitstatus,它将用作 shell 的退出状态;否则,将使用最后一个完成命令的退出状态。 |
export name ... | 标记要导出到子进程环境的命名变量或函数。 |
fg [job] | 将指定的作业(如果没有指定,则为当前作业)移到前台。 |
for | 请参阅 Bourne Shell 脚本/控制流。 |
hash -rv command ... | shell 保持一个哈希表,用于记住命令的位置。如果没有参数,hash 命令将打印出此表的全部内容。自上次 cd 命令以来尚未查看的条目用星号标记;这些条目可能是无效的。 如果给出参数,hash 命令将从哈希表中删除指定的命令(除非它们是函数),然后找到它们。-r 选项会导致 hash 命令删除哈希表中的所有条目,除了函数。 |
if | 请参阅 Bourne Shell 脚本/控制流。 |
jobs | 此命令列出当前 shell 进程的所有子进程。 |
-signal] PID ... | 向 ID 列出的作业发送信号。如果未指定信号,则发送 SIGTERM。 如果使用 -l 选项,则列出系统上定义的所有信号名称。 |
newgrp [group] | 暂时将您的用户移动到新的组。如果没有列出组,则移回用户的默认组。 |
pwd | 打印工作目录。 |
read variable [...] | 从输入读取一行,并将每个单独的单词分配给列出的变量(按顺序)。任何剩余的单词都将分配给最后一个变量。 |
readonly name ... | 使列出的变量只读。 |
return [n] | 从 shell 函数返回。如果指定了一个整数参数,它将是函数的退出状态。 |
set [{ -options | +options | -- }] arg ... | set 命令执行三个不同的函数。 如果没有参数,它将列出所有 shell 变量的值。 如果给出选项,它将设置指定的选项标志或清除它们。 set 命令的第三种用法是将 shell 的位置参数的值设置为指定的 args。要更改位置参数而不更改任何选项,请将“--”用作 set 的第一个参数。如果没有 args,set 命令将清除所有位置参数(等效于执行“shift $#”。) |
shift [n] | 将位置参数向左移动 n 次。 |
test | 请参阅 Bourne Shell 脚本/控制流。 |
trap [action] signal ... | 使 shell 在接收到任何指定的信号时解析并执行 action。 |
type [name ...] | 显示命令是 UNIX 命令、shell 内置命令还是 shell 函数。 |
ulimit | 报告或设置资源限制。 |
umask [mask] | 设置 umask 的值(为新创建的文件未分配的默认文件权限的掩码)。如果省略参数,则打印 umask 值。 |
unset name ... | 删除 shell 中给定名称的定义。 |
wait [job] | 等待指定的作业完成,并返回作业中最后一个进程的退出状态。如果省略参数,则等待所有作业完成,并返回退出状态 0。 |
while | 请参阅 Bourne Shell 脚本/控制流。 |