Bourne Shell入门与shell脚本编程指南

需积分: 0 4 下载量 132 浏览量 更新于2024-08-01 收藏 532KB PDF 举报
"这篇文档是关于Bourne Shell和shell编程的教程,由何斌武编写,来源于大连理工大学的LINUX选修课讲义。它涵盖了Bourne Shell的基础、特性、shell编程以及如何定制shell环境。" Bourne Shell是UNIX系统中的一种原始命令解释器,由Stephen Bourne在Bell实验室开发。它是许多现代shell(如bash)的灵感来源,具有许多基础特性和强大的编程能力。 1. **Shell基础**: - **环境**: Shell的环境包括用户的个人配置文件,如`/etc/passwd`和`$HOME/.profile`,它们定义了用户的登录环境。 - **提示符**: 默认提示符是"$",但可以通过修改环境变量来定制。 - **选项**: Shell有许多可选的执行模式,例如: - `-n`: 只检查脚本的语法,不执行。 - `-x`: 跟踪模式,显示执行的每个命令。 - `-a`: 所有变量自动导出。 - `-c`: 从字符串中执行命令。 - `-i`: 交互式模式。 2. **Shell变量**: - **用户定义变量**: 用户可以创建和修改自己的变量。 - **环境变量**: 影响整个shell会话的全局变量,如`PATH`、`HOME`等。 - **位置变量 (shell参数)**: `$0`到`$9`,分别代表命令行参数中的第一个到第十个参数。 3. **Shell脚本编程**: - **条件测试**: 允许根据条件执行不同的代码块,如`if`、`else`、`test`命令。 - **循环与重复控制**: 包括`for`、`while`和`until`循环。 4. **Shell定制**: - 用户可以通过修改`.bashrc`、`.bash_profile`等文件来定制shell的行为,例如设置别名、函数和环境变量。 - `-r`限制模式:用于创建安全的shell环境,防止执行某些操作,如`cd`、改变`PATH`或重定向输出。 5. **特殊字符**: - Shell中的特殊字符,如`$`、`#`、`;`、`&`、`|`等,都有特定的用途,如变量引用、命令分隔、后台执行和管道。 6. **受限制的shell (Restricted Shell)**: - `/bin/rsh`或`sh -r`是一个安全模式,限制了用户执行可能有害的操作,如改变工作目录或使用绝对路径执行命令。 这篇教程适合初学者了解Bourne Shell的基本概念和用法,同时也为进阶shell编程提供了基础。通过学习,读者将能够编写简单的shell脚本,管理和定制自己的shell环境,以及理解如何利用shell的特性来自动化日常的系统任务。