shell脚本编写规范和相关变量类型

shell编程规范与变量
    一.shell脚本概述
    ① 什么是shell? Linux中有哪些shell?
    ② shell的作用
   ③ 用户的登录shell
    ④ shell脚本的概念
    ⑤ shell脚本应用场景
二.shell编程规范
    ① 编写脚本代码
    ② shell脚本的构成
    ③ shell脚本的执行
三.重定向与管道操作
    ① 管道操作
    ② 重定向
四.shell变量的作用、类型
    ① 变量的作用
    ② 变量的类型
   ▷ 自定义变量
    ▷ 环境变量
    ▷ readonly命令设置只读变量
    ▷ 位置变量
    ▷ 预定义变量
    ▷ 整数变量的运算
    ▷ bash不支持浮点运算,如果需要进行浮点运算,需要借助bc, awk 处理
总结


 

一.shell脚本概述
① 什么是shell? Linux中有哪些shell?
什么是shell?

• 就是与内核沟通的界面、应用程序、KDE等等。比如你要播放音乐,你的计算机通过你在Shell输入的打开音乐的命令,Shell在告诉操作系统的内核用户希望打开音乐,内核在通过cpu调度、内存管理、磁盘输入输出等工作,将硬件调动,这时硬件声卡才会工作,硬件才是实际的工作者

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

Linux中有哪些Shell?

• 检查一下/etc/shells这个文件,里面就是Linux所包含的Shell

• 最常用的就是bash、tcsh、csh、 sh、nologin这些shell。这些shell都是依据Linux发展者的不同所创造出的不同版本

bash: 基准于GNU的框架下发展出的Shell
csh: 语法有点类似于c语言的Shell
tcsh: 整合了csh,提供更多的功能
sh: 已经被bash所替换
nologin: 奇怪的shell,这个shell可以让用户无法登录主机

注: bash ( /bin/bash)是目前大多数Linux 版本采用的默认Shell

② shell的作用
介于系统内核与用户之间,负责解释命令行

③ 用户的登录shell
• 登录后默认使用的shell程序,一般为/bin/bash

• 不同的shell的内部指令、运行环境等会有所区别

④ shell脚本的概念
• 将要执行的命令按顺序保存到一个文本文件

• 给该文件可执行权限

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

⑤ shell脚本应用场景

• 重复性操作

• 交互性任务

• 批量事务处理

• 服务运行状态监控

• 定时任务执行

二.shell编程规范
① 编写脚本代码
• 使用vim 文本编辑器

• 每行一条Linux命令,按执行顺序依次编写

② shell脚本的构成
1.脚本申明(解释器) : 若第一行为“#!/bin/bash", 表示此行以下的代码语句是通过/bin/bash程序来解释执行,#!/bin/bash为默认解释器。还有其它类型的解释器,比如# ! /usr/bin/python、#! /usr/bin/ expect

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

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

 

 

 

 

三.重定向与管道操作

① 管道操作

将管道符号“|”左侧的命令输出的结果,作为右侧命令的输入(处理对象),同一行命令中可以使用多个管道

 

 

 

 

 

 

 

 

四.shell变量的作用、类型

① 变量的作用
• 用来存放系统和用户需要使用的特定参数(值)

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

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

② 变量的类型
• 自定义变量:由用户自己定义、修改和使用

• 特殊变量:环境变量、只读变量、位置变量、预定义变量

环境变量: 由系统维护,用于设置工作环境

位置变量: 通过命令行给脚本程序传递参数

预定义变量: Bash中内置的一类变量,不能直接修改

▷ 自定义变量
✔ 定义一个新的变量

变量名以字母或下划线开头,区分大小写,建议全大写

变量名=变量值

✔ 查看变量的值

echo $变量名

✔ 赋值时使用引导

• 双引号:允许通过$符号引用其他变量值

• 单引号:禁止引用其他变量值,$视为普通字符

• 反撇号:命令替换,提取命令执行后的输出结果

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

总结
• Shell的作用与 应用场景
• Shell脚本的编写规范与执行方法:
• 重定向与管道的作用与使用方法
• 自定义变量赋值时单引号、双引号、反撇号的使用方法
• 数值变量的常用运算符: +、-、 \ *、 /、 %
• 环境变量、 只读变量、位置变量、预定义变量的用途

 

posted @ 2021-07-09 15:38  小蝴蝶快跑  阅读(154)  评论(0)    收藏  举报