1概念

Shell脚本知识点大全_控制台输入

Shell脚本知识点大全_绝对路径_02

2入门 

Shell脚本知识点大全_控制台输入_03

 执行方式

    sh  绝对或者相对路径  xx.sh

 3变量

        系统预定义变量

$HOME
        当前家目录
$PWD
        当前路径的绝对路径
$USER   

        当前用户

        自定义变量

变量名称可以由字母、数字和下划线组成,但是不能以数字开头

定义变量: 变量=值

撤销变量: unset 变量

声明静态变量: readonly 变量

        特殊变量

$n
        $1-$9  代表第一到第九个参数,
        十以上的参数需要用大括号包含,${11}
$#
        获取所有输入参数个数,

$@
        这个变量也代表命令行中所有的参数,把每个参数区分对待

$?
        最后一次执行的命令的返回状态。

                如果这个变量的值为0,证明上一个命令正确执行;        

                如果这个变量的值为非0则证明上一个命令执行不正确了。
 

4运算符       

$[运算式]       

 echo  sum=$[1+3]

5条件判断

[ condition ]
 

判断条件

        

Shell脚本知识点大全_文件名_04

 

Shell脚本知识点大全_正则_05

 举例: 1是否大于22

        【1 -gt 22】

         echo $?         返回1

6流程控制(if 循环)

1 if

Shell脚本知识点大全_shell_06

注意 else后面没有then

 2 case

Shell脚本知识点大全_控制台输入_07

 3 for

Shell脚本知识点大全_shell_08

  举例 0-100的和

Shell脚本知识点大全_文件名_09

  输出控制台输入的所有参数

        

Shell脚本知识点大全_正则_10


4 while循环

Shell脚本知识点大全_文件名_11

 

Shell脚本知识点大全_绝对路径_12


7读取控制台输入

Shell脚本知识点大全_正则_13

 

Shell脚本知识点大全_shell_14


8函数   

系统函数

  1 dirname  文件绝对路径
        从给定的包含绝对路径的文件名中去除文件名,然后返回剩下的路径

  2 basename 路径     

        返回 文件名的部分

自定义函数

方法名 ()

Shell脚本知识点大全_shell_15

         

Shell脚本知识点大全_shell_16


9工具 awk cut sort 

 1 cut  剪为列

        cut  [选项参数]  filename

Shell脚本知识点大全_绝对路径_17

Shell脚本知识点大全_正则_18


  2 awk  按行分割

        awk [选项参数]  ‘pattern1{action1}  filename

Shell脚本知识点大全_shell_19

    举例:搜索a.txt文件以root关键字开头的所有行,并输出该行的第7列
        

awk -F: '/^root/{print $7}' a.txt

   3 sort  它将文件排序
 

Shell脚本知识点大全_绝对路径_20

  按照:分割后的第三列倒序排序

sort -t : -nrk 3 sort.sh


10正则表达式

^ 匹配一行的开头

$匹配一行的末尾

。匹配任意字符一次

# 他前面的那个字符可以出现0次或多次

【】匹配范围内的字符

Shell脚本知识点大全_绝对路径_21

 \ 转义     需要加上单引号        

      找出所有包含$的行  |grep '\$'

Shell脚本知识点大全_控制台输入_22