shell脚本和编程 | 青训营笔记

52 阅读1分钟

Shell

shell 基础概念

一些碎碎念:突然发现还少一篇笔记,考完测试以后开始搬上来,结果发现有题目做错了。乐...

  1. 终端 获取用户输入/展示运算结果的硬件设备
  2. 终端模拟器 termital, 关联虚拟的tty的输入输出软件
  3. tty 和终端等价
  4. Shell command interpreter, 处理来自终端模拟器的输入输出
    • Bash:shell的一种具体实现

    类和实例的关系 构成

image.png

是一种编程语言


基础命令

变量 image.png

  • 自定义变量

如何赋值,如何运算

  • 系统变量

image.png

突然发现考试题做错了...

运算

image.png

  1. 一些常见的运算符:+-* /%|&,逻辑运算符
  2. '和"需要进行区分,完全引用/部分引用
  3. 圆括号
    1. (())算数运算
    2. ()执行命令
  4. 命令连接 &&,||,;
  5. 后台运行&

将标准输入转化为参数列表交给ls

判断命令 整数测试,字符串测试,文件测试

注意中括号空格的写法

函数 自上而下执行,return只是表示状态而不是结果 一般使用echo,printf在外部使用$()获取结果

调试 image.png

vscode插件:shellman, shellcheck, shell-format, bash debug

特点

  1. 模块化 在当前shell内执行函数文件 常用命令 image.png 执行过程 shell脚本->bash解析器(字符解析)->shell展开->重定向->执行命令
  • shell展开
    • 大括号展开
    • 波浪号展开
    • 参数展开
    • 命令替换
    • 数学计算
    • 文件名展开