读书笔记-shell脚本的用法

 

shell 就是把命令行中键入的执行命令写成脚本。shell 编译完成,可以直接运行,不需要编译。

一、执行shell 的方式:

1、 ./XX.sh    这种 方式需要shell程序的可执行权限

2、srouce xx.sh  这种方式不需要权限

3、bash xx.sh  

二、shell脚本的第一行

  #!/bin/sh

  以#!开始,后面加上一个pathname 

  这行话的意思是指定shell脚本执行时被/bin 目录下的sh可执行程序(解释器)解释执行。

  可以将第一行写成:#!/bin/bash 来指定使用bash执行该脚本。

三、脚本中注释使用#

四、shell是弱类型语言,

  1、变量的定义:赋值 = 号的两边是不能有空格的。

  2、变量定义后,可以再次被赋值

  3、变量引用 ,使用$ 符号进行引用 $ var 或者${var}

五、 

  反引号``表示LINUX下的命令

六、if语句的一些常用应用

  判断文件是否存在 (-f),注意[] 里面前后都有空格

  if [ -f a.txt ];then
    echo "yes"
  else
    echo "no"
    touch a.txt
  fi

  判断数字是否相等 (-eq)大于(-gt) 小于(-lt)大于等于(-ge)小于等于(-le)

  判断字符串是否为空(-z),注意,如果变量本身不定义,也不认为为空。

  if语句里的逻辑或(-o)

  逻辑与 && 和逻辑或 || 与简写的if 表达式相结合

七、

  1、case 语句,自己带break一样的,执行完一个后就自动break掉了。

30 var=1
31 case $var in
32 1) echo "1";;
33 2) echo "2";;
34 esac

  shell 中的break ,一般是用来跳出(while等 )循环的

 

  2、shell 传参

  $#表示调用该shell时传参的个数。($#计数时只考虑真正的参数个数)

  $0、$1、$2.......

 sh xxxxx.sh 10 12 15

echo $# 打印参数个数

echo $N    (N=1,2,3)打印第N个参数

  

 

  

 

posted @ 2021-04-08 00:16  Ben002  阅读(77)  评论(0)    收藏  举报