欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    shell编程入门资料.ppt

    • 资源ID:87456633       资源大小:399.50KB        全文页数:25页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    shell编程入门资料.ppt

    Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。shellshell编程入门资料编程入门资料Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。目录目录课程大纲nshell编程语法nshell脚本调试nshell应用实例Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。一个简单的一个简单的shellshell程序程序第一个简单的shell程序$cat example#!/bin/sh#This is to show what a example looks like.echo Our first exampleecho#This inserts an empty line in output.echo We are currently in the following directory./bin/pwdechoecho This directory contains the following files/bin/lsCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。一个简单的一个简单的shellshell程序程序shell结构1.#!指定执行脚本的shell2.#注释行3.命令和控制结构创建shell程序的步骤:第一步:创建一个包含命令行和控制结构的文件。第二步:修改这个文件的权限使它可以执行。使用chmod u+x第三步:执行./example(也可以使用sh example执行)Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。ShellShell变量变量Shell变量变量:是shell传递数据的一种方法,用来代表每个取值的符号名。Shell有两类变量:临时变量和永久变量临时变量是shell程序内部定义的,其使用范围仅限于定义它的程序,对其他程序不可见。包括:用户自定义变量、位置变量。永久变量是环境变量,其值不随shell脚本的执行结束而消失。永久变量echo$PATH 查看环境变量 echo$LANG 查看语言环境 空为英文Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。用户自定义变量用户自定义变量用户自定义变量用户定义的变量由字母或下划线开头,由字母、数字或下划线组成,并且大小写字母意义不同。变量名长度没有限制。在使用变量值时,要在变量名前加上前缀$设置变量:习惯上用大写字母来命名变量。变量只能以字母表中的字符开头,不能用数字。变量赋值:赋值号“=”两边应没有空格。定义时赋值,如NUM=1将一个命令的执行结果赋值给变量,如:TIME=date将一个变量赋值给另一个变量,如:A=$B使用echo命令查看变量值。如:echo$ACopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。设置和使用变量设置和使用变量使用单引号和双引号的区别ABC=time is$DATE 这里会打印时间ABC=time is$DATE 这里会把$DATE打印出来set 可以查看系统里面已经设置的变量unset NAME 可以删除一个变量Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。位置变量和特殊变量位置变量和特殊变量Shell解释执行用户命令时,将命令行的第一个部分作为命令名,其他部分作为参数。由出现在命令行上的位置确定的参数称为位置参数。例如:ls-l file1 file2 file3$0 这个程序的文件名$n 这个程序的第N个参数值特殊变量$*这个程序的所有参数$#这个程序参数的个数$这个程序的PID$!执行上一个后台命令的PID$?执行上一个命令的返回值 如果为0 说明上个命令执行成功Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。文件备份例子文件备份例子请看例子#!/bin/sh#backup files by dateDATE=/bin/date+%Y%m%d/bin/tar-cf/backup/$1.$DATE.tar$1 /dev/null 2/backup/$1.bak.log/bin/gzip/backup/$1.$DATE.tarif$?-eq 0 then echo$1$DATE backup successfully /backup/$1.bak.logelse echo ERROR:failure$1$DATE backup!/backup/$1.bak.logfiCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。shellshell命令命令read命令:从键盘读入数据,赋给变量举例:#!/bin/shread first secondecho the first parameter is$firstecho the second parameter is$second 调试执行 sh-x read 100 200Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。expr expr 命令命令expr 命令shell变量的算术运算 对整数型变量进行运算expr 3+5 请注意中间是有空格的乘法注意啦 expr 3*10复杂运算:expr expr 5+7/$var4将结果赋值:var5=expr$var1/$var2 例如:#!/bin/basha=6b=4value1=expr$a-$becho the value is$value1Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。变量测试语句变量测试语句变量测试语句:用于测试变量是否相等、是否为空、文件类型等格式:test 测试条件测试范围:整数、字符串、文件test str1=str2 测试是否相等test str1!=str2 不相等test-e file 是否存在test-f file 是否为文件test-d file 是否为目录test int1-gt int2 int1是否大于等于int2Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。apacheapache是否启动是否启动例子 web服务器是否启动,如果没有则启动输入 pgrep httpd 什么信息都没有 说明apache没有启动启动:/etc/rc.d/init.d/httpd start关闭:pkill httpd主要脚本web=/usr/bin/pgrep httpd if$web=then /etc/rc.d/init.d/httpd start fiCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。流程控制语句流程控制语句if else语句if -d$file_name then echo is deelif -f$file_name then echo is fileelse echo exit 0#正常退出fi-a:逻辑与 -o:逻辑或Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。forfor循环循环看看就知道for DAY in sunday monday tuesdaydo echo the day is:$DAYdone awk 命令应用awk-F 域分隔符 命令 分段提取不叫F 默认为空格如 awk-F:$3=0 print$1/etc/passwdawk-F:length($2)=0 print$1/etc/shadowCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。踢出用户踢出用户#!/bin/sh#The script to kill logined user.username=$1/bin/ps aux|/bin/grep$username|/bin/awk print$2 /tmp/temp.pidkillid=cat/tmp/temp.pidfor PID in$killiddo /bin/kill-9$PID 2/dev/nulldoneCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。select select 循环语句循环语句casecase控制语句控制语句 select var in Linux Unix Windowsdo breakdone echo You have selected$varread opcase$op in C)echo ;D)echo ;*)echo invalide selectionesacCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。while while 语句语句while -d/etcdo ls-ld/etc breakdone例子:1-10 每个数的平方num=1while$num-le 10do SUM=expr$num*$num echo$SUM num=expr$num+1doneCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。批量添加用户批量添加用户添加用户echo 123456|/usr/bin/passwd-stdin shedon 把密码123456 导入 shedon用户echo please input username:read nameecho please input number:read numn=1while$n-le$numdo/uer/sbin/useradd$name$n n=expr$n+1done删除用户/usr/sbin/userdel-r$name$sumCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。until until 语句语句until 语句判断是否可执行 肯定是假咯 until -x/etc/inittabdo /bin/ls-l/etc/inittab exit 0donebreak 和 continue 跟java里面差不多|逻辑或 .|.Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。shiftshift指定指定shift指定 每执行一次参数向前移一位eg:累加求和if$#-le 0then echo Not enough parameters exit 0fisum=0while$#-gt 0do sum=expr$sum+$1 shiftdoneecho$sumCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。函数应用函数应用函数应用 使可读性更强 函数中的变量均为全局变量,没有局部变量HELP()echo Usage:sh function$1$2$3 if$#-ne 3 then HELPelse echo fiCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。调试调试调试sh-x script这将执行该脚本并显示所有变量的值sh-n script不执行脚本只是检查语法的模式,将返回所有语法错误 如果什么都没有 则说明格式没问题Copyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。执行脚本应有权限执行脚本应有权限su-test 切换到test 用户chmod o-rx/script 将script其他人去掉rx权限sh 脚本 必须1.对脚本有r权限 2.对脚本所在目录有rx权限逐行读取 再比较for file in/bin/cat/tmp/setuid.checkdo /bin/grep$file/backup/setuid.list /dev/null if$?!=0 then echo$file isnt in list fidoneCopyright 2011 by ShenZhen Zyeeda Information Technology Co.,Ltd。地址:深圳市罗湖区深南东路2105号中建大厦701室电话:+86-0755-26966586传真:+86-0755-26966586-802网站:邮编:518001THANKS

    注意事项

    本文(shell编程入门资料.ppt)为本站会员(asd****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开