shell基础知识

shell文件后缀为.sh文件

#注释

echoprintf 输出

一个简单的实例

#!/bin/bash
echo "Hello World !"

运行一个.sh文件

chmod +x ./test.sh
./test.sh

shell 变量

定义变量:a="hello"  b=1

输出变量: echo ${a}  或  echo $b  或  echo ${a} "world"

使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。readonly a

删除变量:unset a   变量被删除后不能再次使用。unset 命令不能删除只读变量。

shell 字符串

shell中主要使用数据和字符串

字符串可以用单引号也可以用双引号

单引号中不能出现转义字符“” 和变量,双引号中可以。

 获取字符串长度:${#a}${a:1:2}

查询子字符串:expr index $a e

shell 数组

定义一个数组: array=(a b c d)

读取数组中的全部元素: ${array[@]}

将数组转为字符串:${array[*]}

获取数组长度:${#array}

shell运算符

算数运算符:

关系运算符:

布尔运算符:

逻辑运算符:

字符串运算符:

文件测试运算符:

shell 流程控制

if else

if condition
then ...
elif condition
then ...
else
       ...
fi

for

for var in a b c d
  do    
   ....
done

while

while conditon
  do
   ....
  done

until

until [condition]
   do
   ....
done

case

case $a in
1) ....;;
2) ....;;
3) ....;;
*) ....;;
esac

shell 函数

func(){
   echo $1
} 
func() a   

shell 向脚本传递参数

#!/bin/bash

echo "执行的文件名:$0";
echo "第一个参数为:$1";

输出结果如下所示:

$ chmod +x test.sh 
$ ./test.sh 1 

执行的文件名:./test.sh
第一个参数为:1  

shell 输入输出重定向

原文地址:https://www.cnblogs.com/sker/p/9051710.html