一、Shell基本概念 shell:command interpreter ,处理来自终端模拟器的输入,解释执行之后输出结果给终端 终端:获取用户输入,展示运算结果的硬件设备 终端模拟器:Mac Terminal、iTerm2等,关联虚拟tty的输入输出软件 tty:teletype writer的简称,和终端等价,早期指电传打印机 ,在Linux中是输入/输出环境 Bash:shell的一种具体实现 构成分为: 解释器(bash内置命令,GNU核心工具集,第三方库) 编程语言(变量,运算,语句,函数) shell 不仅提供了与内核和设备交互的方法,还集成了一些今天软件开发中通用的设计模式(比如管道和过滤器),具备控制流程,循环,变量,命令查找的机制 既是命令解释器,也是一门编程语言,作为命令解释器,它提供给用户接口,使用丰富的 GNU 工具集,第三方的或者内置的,比如 cd 、 pwd 、 exec 、 test 、 netstat 等等 二、语法和命令 1、变量 自定义变量 作用域:当前shell 声明方式:= 规范:字符串,整型,浮点型,日期型 环境变量 作用域:当前shell及其子shell 声明方式:export,declare, -x 系统环境变量 作用域:所有shell 声明方式:启动加载