希赛考试网
首页 > 软考 > 网络工程师

shell 内置命令

希赛网 2024-01-30 18:17:37

是 Shell 程序提供的一系列指令,用于操作文件、目录、文本、进程等。与外部命令不同,内置命令被嵌入到 Shell 程序中,它们可以直接调用,无需从磁盘上加载。本文将从使用、列表、别名、环境变量、时间、文件权限、流重定向、作业控制等多个角度来介绍 Shell 的内置命令。

# 使用内置命令

Shell 提供了众多内置命令,其中一些是常见的,如 cd、ls、echo、pwd、history、exit 等。使用内置命令有以下优点:

- 使用内置命令不需要切换到其他应用程序,可以直接在 Shell 中完成。

- 内置命令运行速度更快,因为它们被嵌入到 Shell 中,无需将程序加载到内存中。

- 内置命令往往比外部命令更稳定,因为它们具有更高的可靠性和兼容性,且不会受到网络带宽和安全等方面的限制。

# 列表内置命令

要查看 Shell 中的所有内置命令,可以使用内置命令 `help`。该命令会显示 Shell 内置命令的帮助信息。另外,还可以使用 `type` 命令来确定一个命令是内置命令还是外部命令。例如,`type cd` 会显示:`cd is a shell builtin`。

# 别名内置命令

别名是 Shell 内置命令的另一种形式,它是用户自定义的简短命令,用于缩写常用命令或为常用命令添加参数。要创建别名,可以使用 `alias` 命令,例如:`alias ll='ls -lh'`。此后,在运行 `ll` 命令时,实际上会执行 `ls -lh` 命令。

# 环境变量内置命令

环境变量是 Shell 程序中重要的一环,它存储了各种系统配置信息和用户数据。Shell 内置命令 `export` 可以用来设置环境变量。例如,`export PATH=$PATH:/usr/local/bin` 表示将 `/usr/local/bin` 目录添加到系统路径中,以便系统可以找到这里的程序。除了 `export`,还有其他一些内置命令,如 `set`、`unset` 等,用于管理 Shell 环境变量。

# 时间内置命令

Shell 内置命令 `time` 可以测量命令的执行时间。例如,`time ls` 会输出类似下面的结果:

```

real 0m0.004s

user 0m0.000s

sys 0m0.004s

```

其中,`real` 表示命令的实际运行时间,`user` 和 `sys` 分别表示命令执行时 CPU 用户时间和系统时间的占用情况。

# 文件权限内置命令

Shell 内置命令 `umask` 用于设置新建文件和目录的默认权限。默认情况下,新建文件的权限为 666(即 `-rw-rw-rw-`),新建目录的权限为 777(即 `drwxrwxrwx`)。可以使用 `umask` 命令来设置更安全的权限,例如:`umask 022` 将权限设置为 644(即 `-rw-r--r--`),新建目录的权限为 755(即 `drwxr-xr-x`)。

# 流重定向内置命令

Shell 内置命令 `>、>>、<` 等用于控制输入和输出流的重定向。例如,`ls > file.txt` 将列表输出到 `file.txt` 文件中。另外,`>>` 可以追加到文件中,而 `<` 可以从文件中输入数据。

# 作业控制内置命令

Shell 内置命令 `jobs`、`fg`、`bg`、`kill` 等用于管理 Shell 中的后台作业。例如,`jobs` 命令可以列出所有后台作业,`fg` 命令可以将一个后台作业移到前台运行,`bg` 命令可以将一个处于停止状态的作业改为后台运行,`kill` 命令可以杀死一个正在运行的作业。

综上所述,Shell 内置命令是 Shell 程序中最重要的一部分。了解这些命令的使用方法和特点,对于提高 Shell 的使用效率和安全性是非常重要的。在实际使用中,可以根据具体需求选用合适的内置命令,从而实现快速高效的文件、目录、文本、进程等操作。

扫码咨询 领取资料


软考.png


网络工程师 资料下载
备考资料包大放送!涵盖报考指南、考情深度解析、知识点全面梳理、思维导图等,免费领取,助你备考无忧!
立即下载
网络工程师 历年真题
汇聚经典真题,展现考试脉络。精准覆盖考点,助您深入备考。细致解析,助您查漏补缺。
立即做题

软考资格查询系统

扫一扫,自助查询报考条件