三剑客:
grep命令:实现过滤功能
-c 统计匹配的行总数信息
-r 进行递归匹配
sed命令:进行替换操作(文件进行编辑)
awk命令:进行取列信息的操作 进行数据的统计工作(awk数据)
shell脚本的执行通常可以采用以下三种方式
1) bash scripts-name 或 sh scripts-name (推荐使用)
当脚本文件本身没有可执行权限的(即文件x位为-号)时常用的方法,这里推荐用bash执行
2) path/scripts-name 或 ./scripts-name(当前路径下执行脚本)
需要先将脚本文件的权限改为可执行权限(即文件加x位)
3) source scripts-name 或 .scripts-name(可以把脚本中变量函数带入到当前的shell中)
变量作用说明:
什么是变量:方程式x=1,y=x+1,即xy为变量,1和x+1是变量的内容
变量就是用一个固定的字符串(也可能是字符数字等的组合),替代更多更复杂的内容,
这个内容里可能还包含变量和路径,字符创等其它的内容。
使用变量的大好处就是方便,当然很多时候在编程中使用变量也是必须的,否则无法完成开发工
有字符串信息,经常被使用时
name=boyu
变量类型说明:
a. 全局变量(环境变量)
系统默认定义好的,由大写字母组成,哪里都可以使用
自定义全局变量方法:
1)变量名尽量为大写
2)定义变量时,需要使用export命令
①export 变量名=value
②变量名=value; export 变量名
③declare-x 变量名=value
3)查看全局变量方法:env
$HOME 用户登录时进入的目录
$UID 当前用户的UID(用户标识)相当于id-u
$PWD 当前工作目录的绝对路径名
$SHELL 当前shell
$USER 当前用户
4)取消变量的方法:unset
5)永久生效全局变量信息,需要将变量定义在/etc/profile
b. 局部变量(自定义变量)
在创建脚本使用的变量(函数使用 脚本本身)
只能在创建他们的shell函数或者shell脚本中使用
如何定义局部变量:
a. 将命令信息定义成变量
date_info=$(date +%F)
date_info='date +%F'
PS:有些比较长的命令,当命令中出现多个管道信息时,尽量不要设置成变量
b. 将字符串信息定义成变量
1)字符串作为变量名使用时:字母 数字 下划线;名称只能以字母和下滑线开头
2)字符串作为变量值使用时:字母 数字 下划线
3)字符串作为变量值时,需要配合引号使用:
双引号:可以解析变量值的信息(也可以不加双引号,一样效果)
单引号:所见即所得
反引号:可以将命令信息进行解析;解析的命令必须存在环境变量中,或者命令信息书写成全路径