Linux基础7-1 Bash脚本编程--变量及其类型

编程语言

  • 机器语言
  • 汇编语言
  • 高级语言
    • 静态语言:编译型语言
      • 强类型(变量)语言
      • 事先需要通过编译器,转换成计算机能够识别的机器语言
      • 如:C 、C++、JAVA、C#...
    • 动态语言:解释型语言
      • 弱类型语言
      • 不需要进行转换,边解释边执行
      • 如:asp、.net、php、shell
    • 面向对象语言:把需要完成的目标抽象的看成一个又一个的对象,再完成对象之间的动作
      • 如:JAVA 、Python
    • 面向过程:针对目录的过程为中心进行编辑
      • 如:shell、C

shell编程:脚本编程也是弱类型编程语言

变量:被命名的一块内存空间

  • 强类型语言:变量在使用前,必须先声明,可能需要初始化
  • 弱类型语言:变量在用时再声明,且不区分类型

内存:编址的存储单元

进程:正在运行中的程序任务

变量类型:实现定义好的数据的存储格式和存储长度

  • 数值
    • 整型
    • 浮点型

逻辑运算

  • &(与运算):两者之间进行与运算,两者都为真时结果才为真,一方为假,结果都为假,当第一位为假时,结果直接为假,不执行第二者
  • |(或运算):两者之间进行或运算,只要一方为真,结果都为真,两者全为假,结果才为假,当第一位为真时,结果便为真,不执行第二位
  • !(非运算):单运算,真结果非运算后为假,假结果非运算后为真
  • 异或:两者相同则为假,两者不同才为真

变量赋值:将数据存放在改变量名下的内存空间

  • 赋值方式:变量名=数据

Bash变量类型

  • 环境变量
    • 作用域为当前的shell进程和其子进程
  • 本地变量
    • 作用域为整个bash进程
  • 局部变量
    • 作用域为当前代码段
  • 位置变量
    • 格式为:$1,$2...
  • 特殊变量(内置)
    • 用来保存上一个命令的执行状态返回值
  • 撤销变量:unset [变量名]
  • 查看当前shell中变量(set):
    • 查看当前shell中的环境变量
      • printenv
      • env
      • export

脚本在执行时会启动一个子shell进程

  • 在命令中启动的脚本,会继承当前的shell环境变量
  • 系统自动执行的脚本(非命令时启动),需要自我定义需要的各种环境变量

程序执行的返回值

  • 程序执行结果
  • 程序状态返回码
    • 0 :正确执行
    • 1-255 :错误执行,1、2、127为系统保留
    • 软件设备存放位置:/dev/null

引用变量:

  • $(变量名):引用其变量的值

脚本:

  • 命令的堆砌,按实际需求,结合命令流程控制来实现的源程序
  • #!/bin/bash :shell脚本的标准开头
原文地址:https://www.cnblogs.com/laogama/p/12995751.html