shell基本的语法

一,概念

1、基本格式 Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器)。

shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为 bash Shell。

shell也是一门编程语言(解释型的编程语言),即shell脚本(就是在用linux的shell命令编程)。

其使用的格式代码写在普通文本文件中,通常以.sh为后缀名

一个系统可以存在多个shell,可以通过cat /etc/shells命令查看系统中安装的shell,不同的shell可能支持的命令语法是不 同的。 

执行脚本: sh hello.sh
或者给脚本添加x权限,直接执行 ./hello.sh

如:chmod +x hello.sh

        ./hello.sh

二,语法


1.变量 变量=值(例如A=5)

注意:等号两侧不能有空格 变量名一般习惯为大写 使用变量:$A
定义变量 A=1 查看变量 echo A输出A   ,echo $A 输出1,

查看当前进程中所有变量 set

撤销变量 unset A 声明静态变量,不能unset readonly B=2
注意:变量中的值没有类型,全部为字符串。

问题:变量a=hello,以下选项哪个可以输出hello luban A、echo $a+"luban" B、echo  a+luban

           C、echo $aluban D、echo $a"luban"   E、echo ${a}luban

答案:D和E

 


2、算数运算

      1)用expr expr $A + $B 赋值 C=`expr $A + $B` 注意中间空格 ,即expr 和$A, $A和+ ,+和$B都要用空格隔开

     示例:     A=100,B=100      输出 expr  $A + $B  结果是300

       2)用(()) 处理

      示例: 赋值 A=$((1+2))   echo  $A=3

   自增 count=1   ((count++))    echo $count 3)用$[] a=$[1+2]    echo $a 4)用let i=1 let i++ let i=i+2


3、扫描器 read   

若:read  str   aaaaaa

则   echo $ str  aaaaa


5、流程控制

1、语法
if    条件    then    执行代码      

           elif    条件      

                  then    执行代码      

                      else        

                          执行代码 fi
2、示例 : #!/bin/bash   //这是注释

                   read -p "please input your name:" NAME //输入NAME,其中-p表示提示:please input your name

                         if [ $NAME = root ]        then  //当$NAME的值是root
                               echo  "hello ${NAME},welcome!"      //输出hello ${NAME},welcome

                                elif [ $NAME  =  luban ]        then    echo "hello ${NAME},welcome!"    //    elif 是else if的简写

                                    else    echo "SB,get out here! "  fi //fi表示结束

               注意:在shell中,上一句错误不影响执行下一句。
               以下脚本执行结果: #!/bin/bash lss echo "hello"

             主要注意空格![ $NAME  =  luban ] 之间都要空格

 

posted @ 2020-05-02 13:35  lsaac  阅读(395)  评论(0编辑  收藏  举报