12 Shell脚本编程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
# Program:This is a Shell Demo # History: # 2005/08/23Huangwei PATH=/bin:/sbin:/usr/sbin echo -e "Hello World! \a \n" exit 0
© ZTE Corporation. All rights reserved
源自文库
变量
虽说变量的定义很简单,但是也有一定的设置规则.
变量与变量内容以一个‘=’来连接 ‘=’左右两边不能有空格 不能以数字作为变量的开头字符
© ZTE Corporation. All rights reserved
变量
变量的调用需要使用一个“$”符号,例如:
Name=“jack“ Age=23 echo –e “My name is $Name,My age is $Age”
好代码是如何炼成的 注释
第一: 注释
任何程序,不论是小型的脚本,还是大型的软 件工程,都离不开注释。一个优秀的程序项目, 注释量应达到程序总量的40%。
第二:稳定、高效的代码
代码结构化,低耦合,高内聚。这需要丰富的 知识积累和不断的尝试练习
代码
© ZTE Corporation. All rights reserved
开始编写第一个Shell
Shell语法
一些实例Shell
© ZTE Corporation. All rights reserved
学习导向
Shell概述
什么是Shell 为什么要学习Shell
Shell Script
什么是Shell Script Shell 和 Shell Script区别 Shell Script 能做什么
C Shell,提 供更多的功能 常见Shell种类
基于ksh发展 而来,功能更 加强大
© ZTE Corporation. All rights reserved
提问
1、什么是Shell?
2、Linux中使用最广泛的是哪一种Shell
© ZTE Corporation. All rights reserved
练习时间
编写一个Shell Script,执行完后打印出”hello world”
© ZTE Corporation. All rights reserved
交互式脚本
一个脚本的执行除了输出信息以外,最重要的还有用户的信息输入。在Shell
Script中,我们可以使用read命令来进行用户信息的输入,例如下列样式: read –p “please input your name” name read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量
编写一个Shell Script,它可以让用户输入姓名和学号,并且最后显示
用户输入的姓名和ID。
© ZTE Corporation. All rights reserved
学习导向
Shell概述
什么是Shell 为什么要学习Shell
Shell Script
什么是Shell Script Shell 和 Shell Script区别 Shell Script 能做什么
Shell Script
什么是Shell Script Shell 和 Shell Script区别 Shell Script 能做什么
第一个Shell脚本
开始编写第一个Shell
Shell语法
一些实例Shell
© ZTE Corporation. All rights reserved
第一个Shell脚本 hello world
变量
变量的定义
Shell Script变量定义非常简单,你不用考虑它到底是一个int型,还是String型又 或者说float,它会根据变量的值来定义其类型,例如: 字符串型 整形
MyName=“Jack“ MyAge=23
Price=10.2
浮点型
© ZTE Corporation. All rights reserved
© ZTE Corporation. All rights reserved
音频播放 播放一段音频文件,一般来说需要具备以下条件:
应用程序 酷狗音乐、QQ音乐等
硬件 CPU、内存、声 卡、显卡、硬盘、 外围接口等
© ZTE Corporation. All rights reserved
操作系统
DOS、Windows、 Linux、Unix、 MaxOS等
简易的数据处理
跨平台支持与学习历程较短
© ZTE Corporation. All rights reserved
Shell和Shell Script区别
Shell是一个命令行界面下让我们与系统沟通的一个工具接口,Shell Script是针
对Shell这个接口所编写的脚本。 Shell Script既可以看做是一个批处理文件,也可以看做是一门编程语言,总之 Shell Script就是建立在Shell基础上的一门脚本语言。 脚本语言最大的好处就是不需要编译执行,它属于解释性语言
第一个Shell脚本
开始编写第一个Shell
Shell语法
一些实例Shell
© ZTE Corporation. All rights reserved
什么是Shell
Shell指的是命令行方面的软件,提供操作系统和应用程序之间的接口。
我们之前学过的man、vi、fdisk、nslookup等命令其实都是一个个独立的应用 程序,他们保存在/bin目录下。这些程序都是通过Shell来访问我们的Linux操作 系统
© ZTE Corporation. All rights reserved
提问
1、Shell和Shell Script区别是什么?
2、Shell Script能用来做哪些事情?
© ZTE Corporation. All rights reserved
学习导向
Shell概述
什么是Shell 为什么要学习Shell
学习导向
Shell概述
什么是Shell 为什么要学习Shell
Shell Script
什么是Shell Script Shell Script 能做什么 Shell 和 Shell Script区别
第一个Shell脚本
开始编写第一个Shell
Shell语法
一些实例Shell
© ZTE Corporation. All rights reserved
为什么我们要学习Shell
1 2
Linux里面很多的命令,应用都是基于 Shell进行的,不懂Shell将无从下手 如果你是Linux维护管理员,那么Shell 更是必须要掌握好的内容
3
了解Shell有助于我们更加理解Linux操 作系统以的本质
人们常说:“书到用时方恨少”,当你的主机正常运行的 时候,学习的知识固然很难派上用场。但是计算机就像人 一样,也会经常“生病”,出问题。我们学好了相关知识, 即使有问题,我们也知道怎么去寻找和解决问题
Shell
什么是Shell 应用程序 播放音频的软件
Shell
接受来自用户的命令与 内核进行沟通 操作系统管理核心,包括CPU进程管 理、内存管理、各种驱动管理等等 系统的实体工作者,比如硬盘、声卡、 显卡、CPU等
核心(Kernel)
硬件(Hardware)
© ZTE Corporation. All rights reserved
echo –e “a+b=$result”
© ZTE Corporation. All rights reserved
练习时间
编写一个Shell Script脚本,计算用户输入的两个数值的和。
© ZTE Corporation. All rights reserved
条件判断
if…then,这是最简单的最常见的条件判断表达式,简单来说就是符合某种条件
后就会进入执行对应的工作。格式如下
if ■[条件判断]; ■ then 当条件成立时,执行这部分内容 fi ■ 表示空格
(这里的Shell变量是name)
参数[-p]后,允许在[-p]后面跟一字符串,在字符串后面跟n个shell变量。n个 shell变量用来接收从shell界面输入的字符串 name表示后面传入参数存储的变量
© ZTE Corporation. All rights reserved
练习时间
#!/bin/bash
使用的Shell名称:这里告诉我们使用的是哪一种Shell 这句话 的意思是告诉操作系统,使用/bin/bash来作为当前shell 程序内容说明:简单来说就是一些注释符 号,虽然这不是必须的,但是建议大家写 任何程序之前都养成在文件开始写“注释” 的习惯,里面主要包含了程序功能说明、 作者、时间、修改历史记录等信息 环境变量声明:加入环境变量声明可以让 你的脚本在调用一些命令时可以直接使用, 而不需要写绝对路径 主要程序部分:顾名思义,脚本代码主要 编写在这里进行 返回值:某些脚本可能需要执行完毕后, 返回一些变量值到系统中
© ZTE Corporation. All rights reserved
Shell Script能做什么?
Shell Script能做很多事情,比如以下几点:
自动化管理重要数据 追踪与管理系统的重要工作 简单入侵检测功能 连续指令单一化
每天自动备份文件 启动服务和结束服务 检测注册表,防止被入侵 连续多条命令组成的脚本 数据比较、求和计算 所有的类UNIX平台都可以运行
物联网应用技术专业
© ZTE Corporation. All rights reserved
学习导向
Shell概述
什么是Shell 为什么要学习Shell
Shell Script
什么是Shell Script Shell 和 Shell Script区别 Shell Script 能做什么
第一个Shell脚本
© ZTE Corporation. All rights reserved
练习时间
编写一个Shell脚本,使用echo命令打印3个变量,分别是你的学号(StuID)、
你的姓名(StuName)、你的年龄(StuAge)
© ZTE Corporation. All rights reserved
© ZTE Corporation. All rights reserved
Linux中的Shell
bash 是 GNU 计划中重要的工具软件 之一,目前也是 Linux 的标准 shell。 Linux默认Shell, 也是最常用的 Shell 由AT&T 发展出来, 兼容于bash
Tcsh 整合了
数学运算
1、使用let
当我使用 let 的时候,我们不使用 $ 符号引用变量。 a=1 b=2 let result=a+b
echo –e “a+b=$result”
© ZTE Corporation. All rights reserved
数学运算
2、使用[]
当我使用 let 的时候,我们不使用 $ 符号引用变量。 a=1 b=2 result=$[a+b]
Shell Script
到这里我们知道Shell 是我们操作系统和应用程序之间的一层接口,我们的应用程序
想要访问内核必须通过Shell。那Shell Script又是什么呢? Shell Script就是Shell脚本,简单来说Shell Script就好比是Window中的批处理文 件,将多条命令汇集在一起执行一些复杂的功能。
为什么要有Shell
操作系统本质上还是一种软件,由于这组软件在控制硬件与管理系统的活动检测,
如果这个软件被用户随意操作,很可能会导致系统崩溃。 但是应用软件总是要和操作系统打交道的,所以Linux处于安全性的考虑,在操 作系统和应用程序之间加入了Shell。
应用程序
操作系统内核
© ZTE Corporation. All rights reserved
第一个Shell脚本
开始编写第一个Shell
Shell语法
一些实例Shell
© ZTE Corporation. All rights reserved
变量
什么是变量?
简单的说就是让某一个字符串代表不固定的内容。 生活中有哪些变量? 市长,汽车行驶公里数,IP地址、电话号码
© ZTE Corporation. All rights reserved