




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Turbolinux用户基础 课程内容,第一章 什么是LINUX 第二章 安装TURBOLINUX 第三章 TURBOLINUX工具 第四章 X配置及疑难解答 第五章 运行级别与故障排除 第六章 文件系统基础 第七章 SHELL使用指南 第八章 SHELL进程与脚本 第九章 文档编辑工具 第十章 TURBOLINUX应用程序,第八章 Shell进程与脚本,本章内容: 命令解释程序Shell 输入输出命令 管道和过滤器 Shell脚本 编程语言,本章要求,Linux流、管道、重定向 通过文本处理过滤器处理文本流 编写shell脚本程序,8.1 命令解释程序shell,shell: 交互式:命令行解释与执行(CLI: command-line interpreter) shell: 胡桃外壳 编程语言,各种shell的特点,/etc/shells 列出Turbolinux系统中可以使用的各种shell,命令解释程序能做什么? 为什么要使用bash? 高级语言的结构(if, while, select等) 支持对文件和目录的大量测试 支持整数运算 程序的开发速度更快 交互式命令历史机制可模仿两个最流行的Linux编辑器Emacs, vi 支持函数编程 先进的模式匹配结构和分析复杂句子的能力,8.2 输入输出命令,标准输入输出 每一个Linux命令都有个与之相关的输入输出流: stdin 标准输入,键盘输入 stdout 标准输出,显示输出 stderr 标准错误输出:输出错误及诊断信息(也是显示输出),重定向 重定向输出 outfile 错误重定向输出 2errorfile 两个输出流重定向到同一地方 2 &1 stderr输出到文件(从左到右): outfile 2&1 stderr仍输出到屏幕: 2&1outfile,重定向 追加重定向输出 appendoutfile 2append_errfile 空设备的使用 /dev/null 2/dev/null 重定向输入 infile,重定向写文件的安全性 不覆盖已存在的文件 set o noclobber 打开不覆盖设置 set +o 显示所有设置 重定向输出机制: 若输出文件不存在,则创建; 若存在, 则执行命令之前会删除其内容. 若file1存在,则 ls file1 文件覆盖出错 ls | file1 成功 set +o noclobber 关闭不覆盖设置,练习,P170 练习8-1:命令输入输出 P171 练习8-2:更多的命令输入输出重定向,8.3 管道和过滤器,管道:与重定向作用类似,但工作原理不同。 who tmpfile wc l tmpfile who | wc -l 管道中的两个命令运行时并不知道它们的输入输出流是连接在一起的 管道中的两个命令要同步运行,以适应管道中数据的“传输”,用重定向,用管道,管道仅能操纵命令的标准输出流,标准错误输出必须重定向,以免在终端显示 管道可多次使用,以连接两个以上的命令 who | grep ttyp | wc l ps ef | grep bash | wc -l,过滤器,过滤器是一段程序(或一个命令) 从标准输入中读数据(有些过滤器可从文件获取数据),然后写到标准输出中 通常会对输入数据进行处理,一个过滤器通常只执行一种功能,sort,功能强大的排序程序 可按整行排序 可按关键字段排序(序号从0算起) 分隔符可指定(-t) 各字段可看作字符串(字符/字典)或数字(n) 顺序/逆序(-r) 小写字母转大写进行排序 sort +1n -2 +0r -1 lsf sort t: +6 +0f -1 /etc/passwd,tr,只能从标准输入中读入数据 如果读入的字符在第一个参数表中,则替换为第二个参数表中相应字符,参数表格式:abc, a-z, A-Z, A*5(表示AAAAA),A*自动拉长表2,使其与表1同长 | tr cs a-z 012* | sort | uniq,ASCII控制字符,问题: 按文件大小倒序列出目录中大小和文件名项。 解答: 1、列目录、去除首行 2、将换成空格 3、仅保留文件大小列和文件名列 4、排序 ls l | tail +2 | tr s t | cut -d f5,9 | sort +0nr,练习,P176 练习8-3:管道和过滤器 P178 练习8-4:更多的管道和过滤器,8.4 Shell脚本,LINUX多任务复杂脚本在监视和调和复杂性方面扮演着重要的角色 脚本功能:与其他可执行程序一样的作用 可读取标准输入、写标准输出和标准错误输出 可打开和关闭文件 可打开数据库进行编辑 可完成命令行中可完成的任何事情 LINUX系统引导后,初始化都由脚本处理 启动X Window系统通常也由脚本完成,脚本可以是文本文件,由编辑器创建或修改 脚本可以是任何以正确格式结束的文本流一个脚本在运行时可创建并运行另一脚本,然后删除它(灵活) 点命令 . ,运行脚本,创建一个脚本的4个步骤: 确定要执行的动作 决定完成该动作使用什么命令 使用编辑器将命令序列存入文件 使用chmod命令将文件标记为可执行的,创建与运行脚本,$vi coresearch #!/bin/sh #codesearch This little ditty finds core fines find $1 name core print :wq $chmod +x coresearch $./coresearch /usr 或$coresearch /usr (放入PATH路径的目录中),指明使用什么SHELL来执行此脚本,注释,参数,$0表示脚本自身的名字 命令行参数$1$9,事务和注释,事务标志:#! #!/bin/sh表示执行/bin/sh,程序的标准输入被重定向到脚本的其余部分 脚本的第一行应该总是#! 注释:# 好习惯,参数和特殊参数,控制段,命令行: 一条命令 一个管道 分号分隔的列表 条件执行 if then fi if then else fi if then elif then else fi,脚本举例:/etc/init.d/killall,读用户输入,for exit 用于脚本的任何地方 读用户输入read echo “Enter your name: c“ read NAME echo $NAME,练习,P183 练习8-5:Shell脚本 P184 练习8-6:附加的Shell脚本 P185 练习8-7:更多的Shell脚本,8.5 编程语言,和C+ Perl Python TCL PHP Java Lisp, Common Lisp, Scheme Fortran,小结,命令解释程序Shell 从
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025家政服务员合同模板
- 2025年小升初数学(新初一)重点校分班考试检测卷(含答案)
- 2025-2026学年人教版六年级数学上册第一单元分数乘法应用题训练【含答案】
- 2025物业清洁服务合同模板
- 2025汽车买卖的合同协议
- 2025年7月全科医学导论模考试题含参考答案0
- 2025年广东省广州市中考数学试卷(含答案与解析)
- 2025销售代表薪酬协议合同模板
- 2025年垃圾分拣装备项目建议书
- 2025年高考语文试题分类汇编:语言文字运用原卷+解析
- 项目档案质量审核情况报告
- 泰山版(2018版)小学信息技术第5册教学计划
- 环刀法测压实度自动计算表格(2020.4.10)
- 多系统萎缩(改良版)课件
- IATF16949仓库管理制度
- 财务开票员的岗位职责 开票员岗位职责介绍
- 运输管理实务(第四版)PPT完整全套教学课件
- 英语阅读理解专项练习(40篇)
- 铜陵鑫佳粉体新材料科技有限公司年产10000吨高品质有色金属粉体扩建项目环评报告
- 2023年宠物用品公司简介(50个范本)
- 营业厅门面转让合同
评论
0/150
提交评论