Shell操作

一:Shell脚本文件的创建和使用

  1:创建

    命令:touch 脚本名字,sh

    例子:touch jb.sh

    注意点:(1)Shell脚本的后缀是sh    

        (2)脚本内第一行要加上一行代码:#!/bin/bash  意思是指定解析器

  2:2种使用方法

    (1)bash  [脚本路径]  参数1  参数2...

    (2)sh  [脚本路径] 参数1 参数2....

      例子:sh /root/jb.sh  1  2  

    注意:脚本文件默认是没有执行权限的,所以要在前面加上bash(sh是bash的软连接)解析器,让它来执行。如果赋予脚本执行权限的话,就不用加解析器了。

 

二:Shell里的变量

  Linux里有许多系统变量,也可以自己增加变量

  变量分为普通变量和静态变量 (1)普通变量:可以移除

               (2)静态变量:不可以移除

  1:查看指定变量

    命令: echo   $   变量名字

    例子:echo  $HOME

  2:查看全部变量

    命令:set

  3:新增变量

    (1)新增普通变量

        命令:变量=值

        例子:a=1

    (2)新增静态变量

        命令:readonly   变量名字=值

        例子:readonly a=1

    定义变量细节:(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。

           (2)等号两侧不能有空格

           (3)在bash中,变量默认类型都是字符串类型,无法直接进行数值运算。

             (4)变量的值如果有空格,需要使用双引号或单引号括起来。

  4:移除变量

    命令:unset 变量名字

    例子:unset a

  5:将变量提升成全局变量

    命令:export 变量名

    例子:export a

 

三:特殊变量

  1:获取脚本名字或某个参数

    命令:$n  (n为数字,0表示脚本名字,1到9表示第一个到第9个参数,第10个以上的参数用{}括起来)

    例子:$0  表示脚本名字

       $1  表示第1个参数

       ${12}  表示第12个参数

  2:获取所有输入参数的总数

    命令:$#

  3:获取所有参数

    命令:$*或者$@

  4:获取上次命令执行的状态,0为true,1为false

    命令:$?

 

四:运算符

  命令:$((运算式)) 或者$[运算式]

  注意:运算符号左右要加空格

  例子:给变量D赋值

  

 

五:条件判断

  常用条件判断符号

  (1)= 字符串比较

  (2)-lt 小于

  (3)-le 小于等于

  (4)-eq 等于

  (5)-gt 大于

  (6)-ge 大于等于

  (7)-ne 不等于

  (8)-r 有读的权限

  (9)-w 有写的权限

  (10)-x 有执行的权限

  (11)-f 是一个存在的文件

  (12)是一个存在的文件或目录

  (13)-d 是一个存在的目录

 

六:流程控制

  1:if判断

  例子:需求是传给脚本一个词组,脚本将词组翻译成英语输出

  

  2:普通for循环

  例子1:需求是输出从1加到100的总和

  

  3:增强for循环

  例子:循环输出所有参数

  

  4:while循环

  例子:从1加到100

  

 

七:read读取控制台输入

  命令:read  -t 10 -p "请输入" name  (-t是时间,-p是提示,name是输入的值的变量名字)(-t和-p是选填)

  例子:

  

 

八:函数

  例子:输入2个数,输出他们的和

  

 

posted @ 2020-03-08 10:56  拔丝小红薯  阅读(138)  评论(0编辑  收藏  举报