第十八章Linux Server中shell脚本应用(一)

Shell的作用2-1

Shell的作用 —— 命令解释器, “翻译官”

介于系统内核与用户之间,负责解释命令行

Shell的作用2-2

用户的登录Shell l 登录后默认使用的Shell程序,一般为 /bin/bash

不同Shell的内部指令、运行环境等会有所区别

编写第一个Shell脚本4-1

编写第一个Shell脚本4-2

编写第一个Shell脚本4-3

编写第一个Shell脚本4-4

重定向与管道操作3-1

交互式硬件设备  

标准输入:从该设备接收用户输入的数据  

标准输出:通过该设备向用户输出数据  

标准错误:通过该设备报告执行出错信息

重定向与管道操作3-2

重定向操作

重定向与管道操作3-3

管道操作符号“|”  

将左侧的命令输出结果,作为右侧命令的处理对象  

格式:cmd1 | cmd2 [... | cmdn]

Shell变量的作用、类型

变量的作用  

1.为灵活管理Linux系统提供特定参数,有两层意思:

1.1变量名:使用固定的名称,由系统预设或用户定义  

1.2变量值:能够根据用户设置、系统环境的变化而变化  

2.变量的类型  

2.1自定义变量:由用户自己定义、修改和使用  

2.2环境变量:由系统维护,用于设置工作环境  

2.3位置变量:通过命令行给脚本程序传递参数  

2.4预定义变量:Bash中内置的一类变量,不能直接修改

自定义变量4-1

1.定义一个新的变量  

1.1格式:变量名=变量值  

变量名以字母或下划线开头,区分大小写,建议全大写  

2.查看变量的值  

格式:echo $变量名

自定义变量4-2

1.赋值时使用引号  

1.1双引号:允许通过$符号引用其他变量值

1.2单引号:禁止引用其他变量值,$视为普通字符  

1.3反撇号:命令替换,提取命令执行后的输出结果  

2.从键盘输入内容为变量赋值  

格式: read [-p "提示信息"] 变量名

自定义变量4-3

设置变量的作用范围  

格式1:export 变量名 ...  

格式2: export 变量名=变量值 ...  

—— 两种格式可以混合使用

自定义变量4-4

1.整数变量的运算  

格式:expr 变量 运算符 变量2 [运算符 变量3] ...  

2.常用运算符  

2.1加法运算:+  

2.2减法运算: -  

2.3乘法运算: \*  

2.4除法运算: /  

2.5求模(取余)运算: %

特殊的Shell变量3-1

1.环境变量  

由系统提前创建,用来设置用户的工作环境  

配置文件: /etc/profile、~/.bash_profile  

2.常见的环境变量:  

PWD、PATH  

USER 、SHELL、HOME

特殊的Shell变量3-2

1.位置变量  

表示为 $n,n为1~9之间的数字

特殊的Shell变量3-3

1.预定义变量  

$#:命令行中位置变量的个数  

$*:所有位置变量的内容

$?:上一条命令执行后返回的状态,当返回状态值为0时 表示执行正常,非0值表示执行异常或出错  

$0:当前执行的进程/程序名

Shell脚本与计划任务

脚本应用思路  

  1. 确定命令操作(设计并执行任务)  
  2. 编写Shell脚本(组织任务过程)  
  3.  设置计划任务(控制时间,调用任务脚本)

 实验:

编辑shell脚本

查看属性

Sh执行方式

bash相同

另一种方式

执行方式

第三种方式

需要执行权限的方式

第四种方式

绝对路径方式

完善脚本

 

变量实验

重定向

标准输出重定向

标准错误重定向

混合输出重定向

混合输出重定向的追加

无底洞的写法没有输出

管道实验

进行筛选

 

管道操作的显示行号

查看根目录磁盘空间的使用率

变量

 

调用

 

 

 

变量的生效范围

 

 

 

 

位置变量

 

 

 

脚本运算实验

 

添加执行权限

执行