shell基础

来源:互联网 发布:win10清理软件 编辑:程序博客网 时间:2024/04/28 22:22
     

Shell基础

1、            脚本命名

     *.sh

2、            命名变量

1)自定义变量:

name=zhangsan

2)#env

大写字母

3)$

#echo $name

#echo $PATH

4)作用域

      默认自定义变量—局部

      通过调用多个shell进程

      打开shell---父

          再次打开shell---子

                Shell----------子

          #env

            SHLVL==shell  level

      #export

     

5){}

  #Name=zhansan

  #echo {$name}isastudent

6) >   >>   输出

   <  <<   输入

   〈〈:制定终止的符号

 

  #cat  < &0   表示接受来自键盘的输入

  #cat  < file   表示接受来自文件的输入

 

      at  <file  -m

 

     系统在接受输入输出内容存在方向

 

输入输出描述符:

  输入:键盘      0

  输出:屏幕      1

  错误输出:分离  2

  临时符号---起过渡作用3-9

     /dev/null----虚拟出来的一个设备(黑洞)

  LS 3<&2  3>file ????

 

7)read  ---从键盘读取变量的值

 注意当变量的数量和值得数量不一致的情况

#read  变量名

8)常见参数

  $?-----表示显示最近一条命令的执行状态

  状态分类:

   退出状态0:表示成功

   退出状态1:表示失败

 

  条件:

   test   操作数1  操作符   操作数2

   test    1  〉 2

   操作符:

     数值类型数据比较

     字符串类型数据表较

     文件类型数据表较

[ ]:代替test

 注意括号前后加空格

 操作数和操作符之间要有空格

[  -x   file   ]

 

  .   脚本文件

  Sh  脚本文件

  ./脚本文件

双引号:解释变量

单引号:当作字符串显示

$#:参数的总的数量

$*:显示所有参数

$1:各个参数

$2……$9

shift  [n] :将参数向前移n位

 

 

9)流程控制结构

If:

  If  条件

  Then

     执行命令

  Elif  条件

  Then

     。。。

  Else

   。。。

Fi

File5.sh

执行命令的状态也可以当作条件

$?----

  内核通过接受到命令退出时返回的数字,判断该命令是否执行成功

  exit 100

 

测试接受参数清款

 如果接受的参数小于3个,提醒

 如果大于3个,显示参数

 

接受参数可以当条件

环境变量也可以当条件

  如果是root身份登陆,提示

  如果不是root,

 

 

 

 

 

Case语句

 语法

  Case   值  in

  模式1|模式3)

       命令1

       。。。

       。。。。

        ;;

  模式2)

      

  Esac

提醒:模式里可以使用通配符

 

shell脚本是给内核看

 

 

for循环

 语法:

  for  变量名 in 列表

  do

    命令1

     。。。

  done

 

 

until

   until  条件

   do  

命令。。。。。

   done

 

while

  while  条件

  do

      命令

  done

 

break:终止当前循环

contine:终止当前次循环

 

计算

  expr  表达式

  $((…..))

 

函数:定义使用

应用

原创粉丝点击