Shell脚本

  • Post author:
  • Post category:其他



Shell介绍

Shell 和python都是弱语言
	定义变量规则 :   变量名=值                              
	
shell定义变量的规则: 
		1:等号两边不能有空格
						
		2:定义特殊的变量需要用单引号或者双引号结合
		       
		3:定义linux命令需要用反单引号

		区分单引号和双引号的不同和相同点
        双引号中有$变量名的话,输出的是变量名对应的变量值
        单引号中有$变量名的话,输出的是$变量名
			
			
Shell取值
		使用:echo $变量名


Shell脚本的规则

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

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

3:输入语句用read

4:输出语句用:echo 
 	
5:   调用的时候
	./脚本名.sh(权限的问题 通过命令chmod +x 脚本名.sh 赋予可执行权限)

	sh 脚本名.sh (不用考虑权限问题)
	
注意点:read可以传递多个数据   read –p”name and passwoed”name  password
	
超过的部分都填充在最后一个变量上
通过命令   vi 脚本名.sh 编辑文件

有该文件时进入该文件编辑

没有该文件时自动创建文件进行编辑

进入文件后按 i/a/o 进行编辑

编辑完成后按ESC后 输入 :wq 保存,:q!强制退出(不保存)

例一


例二


参数传递

向.sh文件中传递数据
	格式: sh 脚本名.sh 参数
	
	$1:接收第一个参数~~$n
	$0:文件名称
 	$@:所有参数 
 	$#:参数个数    




运算符

比较运算符(数字)
 	-eq  比较是否相等
	-ne  比较不相等
	-gt  比较大于
	-ge  比较大于等于
	-lt  比较小于
	-le  小于等于

比较运算符(字符串)
    ==  比较是否相等
    !=  比较不相等

逻辑运算符
    -a   与    
    -o   或   
    !    非

加一操作
    ((i++))  
    ((i+=1))

加N操作
    s=$(($s+$i))  
    s=$[$s+$i]  
    ((s=$s+$i))


If语句

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

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




Case语句

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

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




For循环

格式:
    for 变量  in   列表
	do
	语句
	done

seq mix step max  (需要用反单引号)    
注意:
    mix 开始数据    
    step:间隔   如果step为1,可以省略
    max 结束数据

结束标志done

例一



例二



While循环

格式:
    while [ 条件 ]
	do
	语句
	done

注意:
    1.结束done
    2.While后有空格
    3.条件两边有空格
    4.while条件里面存在变量,需要$,而且两边需要双引号



函数

定义格式:
         函数名(){代码	}

调用格式:
          函数名

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




参数传递

函数中的参数  使用$n来接收数据

例一


例二



返回值

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

注意点:



如果没有代码错误默认返回值为0



有代码错误返回1



查看返回值内容:$?

例一


例二




版权声明:本文为m0_61178239原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。