Shell脚本1编程规范&变量

Shell脚本

1 shell

就是与内核沟通的界面、应用程序等等。

Shell(壳程序)是一个特殊的应用程序,它介于操作系统内核与用户之间,充当了一个“命令解释器”的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行,并输出执行结果

  • 将要执行的命令按顺序保存到一个文本文件

  • 给该文件可执行权限

  • 可结合各种shell控制语句以完成更复杂的操作

2 shell应用场景

  • 重复性操作

  • 交互性任务

  • 批量事务处理

  • 服务运行状态监控

  • 定时任务执行

3 shell脚本的作用

自动化运维

批量化重复操作可以编写脚本结合计划任务自动周期运行

减轻管理员工作量

提高处理文本文件的速度

避免配置出错

4 shell脚本的构成

  1. 脚本申明(解释器):若第一行为“#!/bin/bash”,表示此行以下的代码语句是通过/bin/bash程序来解释执行,

#!/bin/bash为默认解释器,还有其它类型的解释器,比如#!/usr/bin/python、#!/usr/bin/expect

  1. 注释信息:以“#”开头的语句表示为注释信息,被注释的语句在运行脚本时不会被执行

  2. 可执行语句:比如echo命令,用于输出" "之间的字符串

5 重定向和管道

  • 交互式硬件设备

    • 标准输入:从该设备接收用户输入的数据
    • 标准输出:通过该设备向用户输出数据
    • 标准错误:通过该设备报告执行出错信息
  • 重定向操作

    • >覆盖原有内容
    • >>不覆盖,追加到文件底部
    • >一定要setenforce 0 ,从指定文件获取
  • 管道符号

    • 将左侧的命令输出结果,作为右侧命令的处理对象

6 变量

6.1 作用

用来存放系统和用户需要使用的特定参数(值)

变量名:使用固定的名称,由系统预设或用户定义

变量值:能够根据用户设置、系统环境的变化而变化

6.2 分类

  • 自定义变量:由用户自己定义、修改和使用
  • 环境变量:由系统维护,用于设置工作环境
  • 位置变量:通过命令行给脚本程序传递参数
  • 预定义变量:Bash中内置的一类变量,不能直接修改

6.3 规范

  1. 不适用linux的自带命令作为变量名

  2. 不用特殊字符作为变量(eg:$,@, 可以以“_”开头)

  3. 一般不适用中文

  4. 以指定英文名称来定义变量名

  5. 区分大小写


6.4 查看变量的值

查看指定变量值: echo $变量名

获取变量名直接引用:echo ${变量名}

在这里插入图片描述

6.5 赋值时使用引号

符号作用
" "允许通过$引用其他变量值
’ ’禁止引用其他变量值,$视为普通字符
反引号``提取命令执行后的输出结果(先执行命令后赋值)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.6 read

获取输入内容

read -p "提示信息" 变量名

echo $变量名

在这里插入图片描述

echo -n "提示信息"

read 变量名

echo $变量名

在这里插入图片描述

read -a 数组输入

read -a 数组名

在这里插入图片描述
在这里插入图片描述

7 预定义变量

变量作用
$* $@表示命令或脚本要处理的参数
$*把所有参数看成以空格分隔的一个字符串整体(单字符串)返回
#@把各个参数加上双引号分隔成n份的参数列表,每个参数作为一个字符串返回
$0表示当前执行的脚本或命令的名称
$#表示命令或脚本要处理的参数的个数
$?表示前一条命令或脚本执行后的返回状态码,返回值为0表示执行正确,返回任何非0值均表示执行出现异常。也常被用于Shell脚本中return退出函数并返回的退出值

8 运算

8.1 运算符

  • 加法
  • 减法

* 乘法(用expr的时候)

/ 除法

% 取余

8.2 常用的运算表达式

i=$(expr 12 * 5)

i=$((12*5))

i=$[12*5] #这种用法已弃用

let i=12*5

bc是一个简单易用的计算器程序,可以用于执行基本的数学运算,

包括加、减、乘、除和取余等操作

在Shell编程中,可以使用bc命令将数学表达式计算结果输出到标准输出或保存到文件中,以满足不同的需求
tu

i=$((12*5))

i=$[12*5] #这种用法已弃用

let i=12*5

bc是一个简单易用的计算器程序,可以用于执行基本的数学运算,

包括加、减、乘、除和取余等操作

在Shell编程中,可以使用bc命令将数学表达式计算结果输出到标准输出或保存到文件中,以满足不同的需求
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值