Linux Shell编程:Bourne和C Shell解析

需积分: 10 6 下载量 53 浏览量 更新于2024-08-16 收藏 2.22MB PPT 举报
"这份资源是关于Linux环境下的Shell脚本编程的PPT,重点讲解了`set`命令的使用。`set`命令主要用于修改内部脚本变量的值,触发选项标志位以影响脚本行为,以及通过命令的输出重新设置脚本的位置参数。通过示例展示了如何使用`set $(date)`将日期设置为位置参数并打印第二个参数。" 在Linux操作系统中,Shell扮演着至关重要的角色。它是用户与操作系统交互的接口,不仅负责解释用户的命令,还支持编写可重复使用的Shell脚本来自动化任务。Shell主要有两大类:Bourne Shell家族和C Shell家族。 Bourne Shell家族包括最初的Bourne Shell(sh)、Korn Shell(ksh)、Bourne-Again Shell(bash)以及POSIX Shell(sh)。其中,Bash是目前最常用的Shell,因为它兼容Bourne Shell的功能并加入了许多扩展特性。Korn Shell由Stephen R. Bourne在AT&T贝尔实验室创建,旨在融合Bourne Shell的编程能力和C Shell的交互特性。 C Shell家族则包括C Shell(csh)和TENEX/TOPS C Shell(tcsh)。C Shell因其语法接近C语言而得名,提供命令历史、别名、文件名替换和作业控制等功能,更适合交互式使用。 在Linux系统中,不同类型的Shell通常存放在/bin/目录下,如/bin/sh、/bin/ksh、/bin/bash、/bin/csh和/bin/tcsh。`set`命令是Shell内置的一个命令,它的功能丰富多样,例如: 1. 修改内部变量:可以通过`set var=value`来设置或更改变量的值。 2. 触发选项标志:`set -x`开启调试模式,显示命令执行过程;`set -e`使脚本在遇到错误时立即退出。 3. 设置位置参数:`set $(command)`可以用命令的输出来更新位置参数,例如在例子中,`set $(date)`会将当前日期设为位置参数,然后`echo $2`将输出日期的第二部分。 掌握Shell脚本,特别是`set`命令的用法,对于日常的系统管理和自动化工作非常有帮助,能够提高工作效率并减少手动操作的错误。学习和理解Shell的各种特性和命令,对于深入理解Linux操作系统的工作原理也是非常有益的。