ImageVerifierCode 换一换
格式:PPT , 页数:43 ,大小:111.50KB ,
资源ID:381239      下载积分:100 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-381239.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(shell及shell编程.ppt)为本站会员(ga****84)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

shell及shell编程.ppt

1、1,shell 及 shell 编程,2,主要内容,Unix 的 shell 编程介绍Shell 脚本Shell 脚本的编写运行Shell 编程基础注释、变量、参数条件与测试循环,3,一、Unix shell,1、Unix 系统组成内核 、应用内核:系统核心应用:输入/输出管理、文件管理Shell用户与操作系统进行通信的接口内部命令、外部命令,4,一、Unix shell,5,一、Unix shell,用户与 Shell 交互,6,一、Unix shell,7,一、Unix shell,2、shell 的主要功能命令的解释执行环境变量的设置输入/输出重定向Shell 脚本程序,8,一、Unix

2、 shell,3、Unix 系统标准流的定义数据流的概念将命令处理中的流看成“命令输入流”,“命令输出流”。Unix标准流的概念:文件描述 标准定义文件 实际对象 0 标准输入stdin 键盘 1 标准输出stdout 显示器 2 标准错误stderr 错误信息,9,一、Unix shell,4、输入/输出重定向输出重定向: Command filenameCommand filename输入重定向Command dir1 pwd dir1 date dir1或输入输出重定向结合使用:prog outfile,10,一、Unix shell,5、错误流重定向通常标准输出和错误输出流都定向到标准

3、输出文件上,但也可对其进行修改,不同的shell修改方法有所不同.K-shell: $ cc abc.c 2&1 logC shell: % cc abc.c log /同时在屏幕上输出cc abc & log /将不再在屏幕上输出Linux上标准错误输出重定向:2、2和&,11,一、Unix shell,6、管道线处理管道线命令体现了一种工作的思想。可将一个程序(或命令)的输出作为另一程序(命令)的输入,例: ls l tempfile wc -l tempfile rm tempfile用下面命令替换: ls -l | wc -l 可看成是输入输出重定向的组合方式此外,管道线还可完成更为复

4、杂的处理如: 逻辑“或”: write zhang letter | mail zhang letter 逻辑“与”: mail zhang outfile后台计算:使用 & 符号find / -name “pass*” print &相关:ctrl+z、bg、fg、jobs、ctrl+c、nohupshell变量的取值与访问:$C shell 的历史纪录标志:! 转义符: (使紧跟其后的字符失去shell中特殊含义 ),15,二、用户工作环境配置,1、几种shell的配置文件korn shell (ksh) .profile 、 .kshrcbourne shell (sh) .profil

5、ec shell (csh).cshrc 、 .loginbash shell (bash) .bash_profile、 .bash_login、 .profile、.bashrc,16,二、用户工作环境配置,2、Shell 的变量及变量使用环境变量、局部变量显示设置:set、unset变量赋值:XXX=XXX变量须以字母开头等号两边不能有空格显示变量:echo $XXX,17,二、用户工作环境配置,3、Korn shell环境变量的设置.profile 实例PATH=/usr/bin:/etc:/usr/sbin:/usr/lib:$HOME/bin:/sbin/binMAILCHECK=

6、1MAILPATH=/uer/spool/mail/user/MAIL=/usr/spool/mail/userMAILMSG=“you have new mail/a”export PATH MAIL MAILCHECK MAILPATH MAILMSGexport TMOUT=200export PS1=$PWDexport EDITOR=/usr/bin/viif test -s “$MAIL”then echo “$MAILMSG”fiset -o ignoreeofset -o noclobberset -o vialias dir=“ls -l”alias cls=“clear”,

7、18,二、用户工作环境配置,4、k-shell环境变量PATH查询程序的路径PS1shell的主提示符PS2shell的第二提示符MAILPATH用户的电子邮箱路径SHELLshell程序的路径PWD当前工作目录TMOUT无命令输入退出等待时间(秒)TERM终端类型HOME用户主目录EDITOR缺省的编辑器FCEDITfci调用的编辑器HISTFILE历史命令文件名,19,二、用户工作环境配置,5、C shell 环境变量设置实例.cshrc文件:set path=(./bin /usr/bin /usr/ucb /user2/ motif/bin)set prompt=“ whoamihos

8、tname!)”set filecset history=50set savehist=50umask 027alias cp cp-Ialias mv “mv -I”alias rm rm -Ialias ls ls -sfalias m morealias h history,20,二、用户工作环境配置,6、C Shell几点注意事项:1)习惯上将shell 变量的设置和赋值放在 .cshrc中,将环境变量及终端特性放在 .login中;2)有些变量可在命令行中直接输入,修改原有设置set path=($ path /home/chr/temp)3)用户注册目录下若没有这两个设置文件,系统

9、将调用缺省设置文件,它一般放在 /usr/lib 目录下;4)用户修改后的设置文件要用以下命令使其起作用: source .login source .cshrc,21,三、Unix 的 Shell 编程语言,1、Shell 程序Shell 程序是包含一个或多个Shell 命令的集合。Shell 语言是一种命令语言,拥有许多计算机程序语言的一般特性,包括结构化语言的顺序、选择、循环。Shell 程序通常放在文件中,称为Shell 过程、Shell脚本或脚本。优点:确定步骤一次完成目标不用重复键入一系列命令简化自己和其他用户的操作,22,三、Unix 的 Shell 编程语言,2、编写运行 sh

10、ell 脚本cat、vi 等进行编辑执行脚本用 sh 调用脚本将文件变成可执行文件,23,三、Unix 的 Shell 编程语言,$ cat hello #Filename:hello (#后的字符串为注解) echoHelloworld! “直接使用sh命令来执行。 $ shhello 或 $ bashhello helloworld! helloworld! 将hello这个文件的权限设定为可执行。 $ chmod 755 hello 或 chmod u+x hello $./hello helloworld!,24,三、Unix 的 Shell 编程语言,3、特殊字符的使用b:退格c:在

11、输出后禁止回车(新行)n:回车换行r:回车,但不换行t:制表符0n:后面跟八进制数字,代表字符的ASCII码07:响铃$cat hello2echo e “07”echo hello , this a test !,25,三、Unix 的 Shell 编程语言,4、dot 命令的使用使得用户在当前 shell 中运行程序,而不创建新的子进程5、读取输入:read将输入的文本存储到一个或多个变量中若变量个数与数据个数相等,则对应赋值。若变量个数大于输入数据个数,则没有输入数据的变量取空值。若变量个数小于输入数据个数,则多余的数据赋给最后一个变量。,26,四、shell 编程基础,1、注释# 作为

12、注释,忽略 # 后的字符2、变量variablevalueUnix shell 不支持数据类型,默认情况下任何赋值都解释为字符串变量的显示用 echo $variable,27,四、shell 编程基础,3、消除元字符的特殊含义 将后续单字符解释成为一普通字符;“引号内的特殊字符仍作为shell中的含义解释;用单引号忽略其所包括的所有字符的特殊含义;反引号( 1左边),用反引号括起来的命令进行变量赋值在,表示变量中存放的是命令的执行结果。,28,四、shell 编程基础,4、Shell 标准变量,在shell进程创建时自动赋值:变量用途 sh变量 csh变量 环境变量用户名 user USER

13、注册目录 HOME home HOME访问路径 PATH path PATHcd路径 CDPATH cdpath提示符 PS1 prompt辅提示符 PS2 终端类型 TERM term TERM 运行的shell SHELL shell,29,四、shell 编程基础,5、命令行参数Shell 脚本最多可以从命令行读取10个参数$0 :脚本文件名$1.$9:第一到的九个参数$# :参数个数$:包含所有命令行参数:“$1 $2 . $9”$? :包含最后一个命令的退出状态$* :包含所有命令行参数:“$1 $2 . $9”$ :包含正在执行进程的进程ID(PID)当你执行程序时的参数数目超过9

14、个时,可以使用shift 命令将参数往前移一格(缺省),Shift n 参数左移n个,如此即可使用第10个以後的参数。除此之外,还可以用set 命令改变$n及$*,方法如下: set string 如此$*的值即为string,而分解後则会放入$n。如果set 命令後面没有参数,会列出所有已经设定的变量以及其值。,30,四、shell 编程基础,6、测试命令:testtest 表达式 或 表达式 (后,前要有空格)test 可进行的多种判断:数值、串值、文件数值判断:n1 -eq n2整数n1等于n2,则为真。n1 -ne n2整数n1不等于n2,则为真。n1 -gt n2整数n1大于n2,则

15、为真。n1 -lt n2整数n1小于n2,则为真。n1 -ge n2整数n1大于等于n2,则为真。n1 -le n2整数n1小于等于n2,则为真。,31,四、shell 编程基础,串值:-z s1 如果字符串s1的长度是零,则为真。-n s1 如果字符串s1的长度不是零,则为真。s1 = s2 如果字符串s1和字符串s2相等,则为真。s1 != s2如果字符串s1和字符串s2不等,则为真。s1 如果字符串s1不是空串,则为真。文件:-r 文件名如果此文件存在并且是可读的,则为真。-w 文件名如果此文件存在并且是可写的,则为真。-x 文件名如果此文件存在并且是可执行的,则为真。-s 文件名如果此

16、文件存在并且长度大于零,则为真。-f 文件名如果此文件是一个普通文件,则为真。 -d 文件名如果此文件是一个目录,则为真。,32,四、shell 编程基础,测试命令可以由单个测试条件构成,也可以由多个测试条件构成,用逻辑操作符号连接起来。-a二进制“与”操作符-o二进制“或”操作符 !一元“非”操作符测试:10 = x ,=,=,!= 等等运算符左右都必须有空格,例如:j=expr $j + 1 表示Shell变量j完成了加1的动作。let算术运算,自动使用变量值参与运算。,41,四、shell 编程基础,10、设置终端功能:tputbel:回显终端的响铃字符blink:闪烁显示bold:粗体显示clear:清屏cup r c:把光标移到r行c列dim:显示变暗ed:从光标位置到屏幕底清屏el:从光标位置到行末清除字符smso:启动突出显示smul:启动下划线模式rmso:结束突出模式rmul:结束下划线模式rev:反白显示sgr0:关闭所有显示,42,四、shell 编程基础,11、调试 shell 程序-n:读取命令但不执行-v:在读取输入时显示shell输入行-x:在执行命令时显示命令的参数,43,作业,学号位数为偶数同学完成第四章习题里 shell 编程部分内容。,

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。