当前位置:   article > 正文

Shell脚本详细介绍_sh脚本

sh脚本

一:Shell介绍

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

二:Shell定义变量规则

Shell 和python都是弱语言

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

shell定义变量的规则:

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

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

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

Shell取值

使用:echo $变量名
  • 1

图片展示:
在这里插入图片描述

三:Shell脚本的规则

1.执行shell脚本

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

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

3:输入语句用read

4:输出语句用:echo

5: 调用的时候

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

图片展示:
在这里插入图片描述

注意:
read可以传递多个数据
read –p”name and password”name password
超过的部分都填充在最后一个变量上
在这里插入图片描述
2.参数传递
向.sh文件中传递数据
格式: sh 脚本名.sh 参数

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

图片展示:
在这里插入图片描述
在这里插入图片描述

四:Shell运算符

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

	-eq  比较是否相等
	-ne  比较不相等
	-gt  比较大于
	-ge  比较大于等于
	-lt  比较小于
	-le  小于等于
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

(字符串类型判断)

	==    比较是否相等
	!=   比较不等于
  • 1
  • 2

2.逻辑运算符

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

五:Shell if语句

格式:

if [ 条件 ]
then
语句
elif [ 条件 ]
then
语句
......
else
语句
fi
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

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

图片展示:
在这里插入图片描述

六:Shell case循环语句

case规则

case $变量名 in
"值")
语句;;
"值")
语句;;
.....
esac
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

图片展示:
在这里插入图片描述

七:Shell for循环

格式:

for 变量  in   列表
do
语句
done
  • 1
  • 2
  • 3
  • 4

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

图片展示:
在这里插入图片描述

八:Shell while循环

格式:

while [ 条件 ]
do
语句
done
  • 1
  • 2
  • 3
  • 4

图片展示:
在这里插入图片描述

九:Shell 函数

格式:

函数名(){代码}
函数名
  • 1
  • 2

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

图片展示:
在这里插入图片描述
函数中的参数

使用$n来接收数据

图片展示:
在这里插入图片描述
查看函数的返回值

Shell中函数中默认存在返回值
查看函数的返回值使用 $?

注意:
如果没有代码错误默认返回值为0,
有代码错误返回1

图片展示:
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/51607?site
推荐阅读
相关标签
  

闽ICP备14008679号