Shell脚本详细介绍

x33g5p2x  于2021-11-09 转载在 Shell  
字(1.3k)|赞(0)|评价(0)|浏览(558)

一:Shell介绍

Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理,shell是一个命令解释器,是一个工具箱, Shell 将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。

二:Shell定义变量规则

Shell 和python都是弱语言

定义变量规则:变量名=值

shell定义变量的规则:

1:等号两边不能有空格
 2:定义特殊的变量需要用单引号或者双引号结合
 3:定义linux命令需要用反单引号

区分单引号和双引号的相同点

单引号:单引号' '包围变量的值时,单引号里面是什么就输出什么,即使内容
中有变量和命令也会把它们原样输出。	
双引号:双引号" "包围变量的值时,输出时会先解析里面的变量和命令,而不是
把双引号中的变量名和命令原样输出。

Shell取值

使用:echo $变量名

图片展示:

三:Shell脚本的规则

1.执行shell脚本

1:脚本名称使用.sh结尾

2:第一行必须写# !/bin/bash

3:输入语句用read

4:输出语句用:echo

5: 调用的时候

./脚本名.sh(权限的问题)
sh 脚本名.sh

图片展示:

注意:
read可以传递多个数据
read –p”name and password”name password
超过的部分都填充在最后一个变量上

2.参数传递
向.sh文件中传递数据
格式: sh 脚本名.sh 参数

$1:接收第一个参数~~$n
$n:文件名称
$@:所有参数 s
$#:参数个数    $0

图片展示:

四:Shell运算符

1.比较运算符
(数字类型)

-eq  比较是否相等
	-ne  比较不相等
	-gt  比较大于
	-ge  比较大于等于
	-lt  比较小于
	-le  小于等于

(字符串类型判断)

==    比较是否相等
	!=   比较不等于

2.逻辑运算符

((i++))  ((i+=1))     
	s=$(($s+$i))  s=$[$s+$i]  ((s=$s+$i))

五:Shell if语句

格式:

if [ 条件 ]
then
语句
elif [ 条件 ]
then
语句
......
else
语句
fi

注意:
1:if后面有空格,
2:条件两边有空格
3:if条件里面存在变量,需要$,而且变量两边需要双引号
4:fi是结束标识

图片展示:

六:Shell case循环语句

case规则

case $变量名 in
"值")
语句;;
"值")
语句;;
.....
esac

注意:
1:case这第一行以in结尾
2:值可以是字符串也可以是数字, 如果数字范围[0-9]
3:结束语句;
4:esac结束标志

图片展示:

七:Shell for循环

格式:

for 变量  in   列表
do
语句
done

列表元素过多使用:seq mix step max
注意:mix 开始数据 step:间隔 max 结束数据,如果step为1,可以省略

图片展示:

八:Shell while循环

格式:

while [ 条件 ]
do
语句
done

图片展示:

九:Shell 函数

格式:

函数名(){代码}
函数名

注意:必须先定义一个函数,然后再调用它

图片展示:

函数中的参数

使用$n来接收数据

图片展示:

查看函数的返回值

Shell中函数中默认存在返回值
查看函数的返回值使用 $?
注意:
如果没有代码错误默认返回值为0,
有代码错误返回1

图片展示:

相关文章