文章目录
Shell编程规范与变量
一、概览
1、Shell脚本的概念
●将要执行的命令按顺序保存到一个文本文件
●给该文件可执行权限
●可结合各种ShelI控制语句以完成更复杂的操作
2、Shell脚本应用场景
●重复性操作
●交互性任务
●批量事务处理
●服务运行状态监控
●定时任务执行
…
3、Shell的作用
用户的登录Shell
●登录后默认使用的Shell程序,一般为 /bin/bash
●不同hll的内部指令、运行环境等会有所区别
4、重定向与管道操作
交互式硬件设备
●标准输入:从该设备接收用户输入的数据
●标准输出:通过该设备向用户输出数据
●标准错误:通过该设备报告执行出错信息
5、重定向操作
6、Shell变量的作用
用来存放系统和用户需要使用的特定参数(值)
◆变量名:使用固定的名称,由系统预设或用户定义
◆变量值:能够根据用户设置、系统环境的变化而变化
7、Shell变量的类型
●自定义变量:由用户自己定义、修改和使用
●特殊变量:环境变量,只读变量,位置变量,预定义变量
8、赋值时使用引号
●双引号:允许通过$符号引用其他变量值
●单引号:禁止引用其他变量值,$视为普通字符
●反撇号:命令替换,提取命令执行后的输出结果
9、常用运算符
加法运算:+
减法运算:-
乘法运算:\*
除法运算:/
求模(取余)运算:%
10、环境变量
●由系统提前创建,用来设置用户的工作环境
●配置文件: /etc/profile、 ~/.bash_ profile
二、命令操作使用
1、编写第一个Shell脚本
vim first.sh
2、赋予可执行权限
chmod +x first.sh
3、执行脚本文件
方法1:脚本文件路径(必须要有权限才能执行)
./first.sh
方法2:sh脚本文件路径(不需要执行权限)
sh first.sh
方法3:source脚本文件路径(不需要执行权限,执行完成后环境发生改变,改变成boot目录)
source first.sh(.号和source用法一样)
4、混合输出
yum install httpd -y &> /dev/null
所有正确和错误的信息都打印到黑洞里面去
5、管道操作符号
grep “bash$” /etc/passwd | awk -F: ‘{print $1,$7}’ ##结果集以“:”号分隔,取第1个字符和第7个字符
df -hT | awk ‘{print $1,$7}’ ##结果集以空格或tab为分隔,取第1个字符和第7个字符
6、自定义变量赋值
7、从键盘输入内容为变量赋值
read -p “请输入一个整数:” sum
8、设置变量的作用范围
export Product Version
export Abc=123
9、只读变量
10、位置变量
sh first.sh 100 200