shell基础学习

一.基础shell

  1. echo输出命令

语法:echo [选项] [输出内容]

选项: -e:支持反斜线控制的字符转换

                      \\:输出\本身

                      \b:退格键

                      \n:换行符

                      \t:制表符

                      \v:垂直制表符

2.脚本执行

  1. 赋予执行权限,直接运行
    1. chmod 755 hello.sh
    2. ./hello.sh
  2. 通过bash调用执行文件
    1. bash helle.sh

脚本文件转换:win转unix:dos2unix [文件名]

                                   unix转win:unix2dos

3.历史命令

       语法:history [选项] [历史保存文件]

历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改

       选项:

              -c:清空历史命令

              -w:把缓存中的历史命令保存文件【~/.bash_history】

4.别名

       alias 自定义名称 = 命令

       永久生效:/root/.bashrc

       unalias:删除别名

5.多命令顺序执行

       ; :多个命令执行,没有逻辑关系

       &&:当命令1正确执行,则命令2才执行,命令1执行错误,2则不执行

       ||:当命令1执行不正确,则命令2才执行,执行正确,命令2不执行

格式:命令1&&命令2

6.本地变量

       变量定义:name=“love 233”

       变量叠加:aa=123

                            aa=“$aa”456

                            aa=${aa}789

       变量调用:echo $name

       变量查看:set

       变量删除:unset name

7.环境变量

       申明变量:export 变量名=变量值

       查询变量:env

       删除变量:unset 变量名

8.位置参数变量

shell基础学习_第1张图片

9.预定义变量

shell基础学习_第2张图片

10.键盘输入

语法:read 【选项】 【变量名】

       选项:

              -p“提示信息”:在等待read输入时,输出提示信息

              -t 秒数:read命令等待用户的指定时间

              -n 字符数:read命令只接受指定的字符数,在到达指定字节自动下一步

              -s:隐藏输入的数据

11.变量类型

       1.declare 声明变量类型

              语法:declare [+/-] [选项] 变量名 

                     选项:

                            -:给变量设定类型属性

                            +:取消变量的类型属性

                            -i:将变量声明为整数型

                            -x:将变量声明为环境变量

                            -p:显示指定变量的被声明的类型

       2.expr或let数值运算工具

              格式:变量名=$(expr $aa + $bb)   #运算符两侧加空格

       3.  $((运算符)) 或 $[运算符]

12.变量测试与内容替换

shell基础学习_第3张图片

13.配置文件

       source命令  让配置文件直接生效

       语法:source 配置文件

       或:              .配置文件

14.配置文件

shell基础学习_第4张图片

shell基础学习_第5张图片       2.登录后欢迎信息:/etc/motd

       不管是本地,还是远程登录,都可以显示此欢迎信息

二.正则表达式

shell基础学习_第6张图片

  1. 字符截取命令-cut

格式:cut [选项] 文件名

选项:
        -f列号:提取第几列

        -d分割符:按照指定分割符分割列

2.    字符截取命令-printf命令

       格式:printf ‘输出类型输出格式’  输出内容

       输出类型:

              %ns:输出字符串,n是数字指定输出第一个字符

              %ni:输出整数

              %m.nf:输出浮点型,m和n是数字,指代输出的整数位数和小数位数。

3.截取命令-awk命令:

       格式:awk ‘条件1{动作1} 条件2{动作2}’ 文件名

       条件:一般使用关系表达式作为条件

              条件:

‘BEGIN {动作}‘  #在开始的时候执行什么动作

‘END{动作}’  #在结尾执行什么动作

       动作:格式化输出,流程控制语句

              动作:

                     {FS=‘’} #指定分割符

4.字符截取-sed命令

       格式:sed [选项] ‘[动作]’  文件名

       选项:

       -n:只会把经过处理的行输出

       -e:允许对输入数据应用多条sed命令编辑

       -i:用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出

动作:

shell基础学习_第7张图片

5.排序

shell基础学习_第8张图片

三,条件判断

       1.

shell基础学习_第9张图片

2.

shell基础学习_第10张图片

3.

4.

shell基础学习_第11张图片

shell基础学习_第12张图片shell基础学习_第13张图片shell基础学习_第14张图片

2.IF判断

shell基础学习_第15张图片shell基础学习_第16张图片shell基础学习_第17张图片

Case:判断

shell基础学习_第18张图片

For循环:shell基础学习_第19张图片

shell基础学习_第20张图片

While循环

shell基础学习_第21张图片

Until循环

       与while循环相反,只要条件判断成立就结束循环

shell基础学习_第22张图片

 

你可能感兴趣的:(学习)