Unix C Shell 教程:简体中文版
需积分: 9 82 浏览量
更新于2024-08-01
收藏 464KB DOC 举报
"Unix C Shell - 简体中文版,由台湾作者黄天彦(网络农夫)编写,基于FreeBSD文档的C Shell教程。内容涵盖了Shell的基础知识、C Shell的特性和使用,包括指令行模式、环境定制、程序设计、输入/输出重定向、文件名扩展、管线操作、历史记录、别名设置、工作控制以及内建指令等。"
在Unix系统中,Shell是用户与操作系统交互的接口,它负责解析用户在命令行输入的指令并执行。`C Shell`,全称为`C-Style Shell`,是由Bill Joy为Berkeley System Distribution (BSD)开发的一种Shell,因其语法和C编程语言相似而得名。本教程深入浅出地介绍了C Shell的各个方面。
1. **认识Shell**
Shell是一个命令解释器,它提供了一种用户与操作系统内核进行交互的方式。在Unix系统中,有多种Shell,如Bourne Shell、Korn Shell和C Shell。C Shell以其友好的语法和丰富的特性受到许多用户的喜爱。
2. **C Shell的运用**
- **指令行模式**:用户可以通过命令行直接输入指令,C Shell会解析并执行这些指令。
- **制定使用环境**:C Shell允许用户通过环境变量来定制自己的工作环境,例如设置PATH变量来指定可执行文件的搜索路径。
- **程序设计**:C Shell支持简单的流程控制结构,如if-else、for、while等,使得用户可以在命令行环境中编写简单的脚本。
3. **C Shell的基本运用**
- **单一指令**:执行单个命令。
- **连续指令**:通过分号或逻辑运算符(&&和||)连接多个命令,按顺序或条件执行。
- **群体指令**:使用大括号将一组命令包裹起来,作为一个整体执行。
- **条件式的指令执行**:通过if、case等结构实现条件判断,决定是否执行特定的命令。
- **输入/输出重定向**:改变命令的默认输入输出源,如使用`>`和`<`进行输出和输入重定向。
- **管线**:通过`|`连接多个命令,实现数据流的传递。
4. **输入/输出重定向**
- **输出重定向**:可以将命令的输出写入文件,或追加到现有文件。
- **实用的输入/输出重定向运用**:如重定向标准错误输出、使用`tee`指令同时输出到屏幕和文件等。
5. **文件名扩展**
- `*`和`?`:通配符,匹配任意数量的字符和单个字符。
- `[]`:匹配括号内的任意一个字符。
- `{,,,}`:匹配括号内的任意一个值,常用于文件名的批量处理。
6. **别名(aliases)的设定与运用**
- 用户可以创建别名,简化常用命令的输入,如设置`ll`为`ls -l`的别名。
- 别名可以包含参数,并能引用其他别名,但需避免别名循环引用。
7. **工作控制(job control)**
- **前台工作**:用户直接交互执行的任务。
- **后台工作**:使用`&`符号将任务放入后台运行。
- **后台工作的控制管理**:使用`fg`和`bg`命令切换任务的前后台状态,`jobs`命令查看当前后台任务。
8. **C Shell的内建指令**
- 如`cd`改变目录,`echo`打印文本,`umask`设置文件创建权限等,这些指令无需调用外部程序,提高了效率。
这个教程详尽地介绍了C Shell的各个方面,对于想要理解和掌握C Shell的用户来说,是一份非常实用的学习资料。
2014-02-27 上传
2013-12-20 上传
点击了解资源详情
2021-05-04 上传
2022-09-22 上传
点击了解资源详情
2022-09-23 上传
2021-02-04 上传
2007-11-16 上传
deanetg
- 粉丝: 0
- 资源: 12
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录