这里仅记录一下易忘且相对较重要的知识点

一、环境变量

       可以直接在环境变量前加上美元符($)来使用这些环境变量

          

       
 linux默认的umask值决定了新文件的默认权限设置,由于umask被设置成了022,所以创建的文件只有文件属主和属组才有读写权限,执行脚本之前要给文件加上执行权限chmod

         

 二、用户变量

        shell脚本允许在脚本中定义和使用自己的变量,定义变量允许临时存储数据并在整个脚本中使用。

        用户变量区分大小写,可以是任何由字母数字下划线组成的文本字符串,长度不超过20个,赋值时等号两边不要出现空格。

          

          

三、命令替换

      有两种方法可以将命令输出赋给变量:

           1.  反引号 ( ` )              #反引号在键盘上与波浪线处同一位置

           2.   $( )格式

例:   test=`  date `    或  $( date )

        

        

四、输入输出重定向、管道

     >

    >>

    <

    << 

     |

 五、数学表达式

        在bash中,再将一个数学运算结果赋给某个变量时,可以用美元符和方括号( $[ operation  ] )将数学表达式围起来

    

    

    但是bash shell数学符运算只支持整数运算(使用内建的bash计算器bc解决此问题)



    scale变量控制计算结果保留的小数位数,默认为0

     

    在脚本中使用bc格式

    variable=$(echo " options; expression " | bc)

      

     

 

  内联输入重定向,重定向数据 

 variable=$ ( bc << EOF

 options

 statement

 expressions

 EOF

 )





 六、退出状态码

   
Linux退出状态码

状态码

                       描述


0

               命令成功结束


1

      一般性未知错误(无效参数)


2

          不适合的shell命令


126

        命令不可执行(无权限)


127

              没找到命令


128

           无效的退出参数


128+x

     与linxu信号x相关的严重错误


130

       通过ctrl+c终止的命令


255

    正常范围之外的退出状态码

脚本中exit可指定退出状态码