一、什么是 ShellShell 是用户和 Linux 内核交互的程序既是命令交互界面也能写.sh脚本程序系统默认主流为 Bash。二、Shell 常见类型主流bash系统默认、sh、dash、csh、ksh用户默认 Shell 配置在/etc/passwd最后一列输入/对应shell名可手动切换exit退出。脚本首行#!/bin/bash指定脚本解释器。三、Shell 父子进程打开终端默认是父 Shell输入bash会生成子 Shell。查看进程树ps --forestPID 为进程号PPID 是父进程号。子 Shell 单独环境执行exit逐层退出回到父 Shell。判断是否存在子 Shellecho $BASH_SUBSHELL0 无大于 0 有子 Shell。四、Shell 几种运行模式单行多命令用;分隔顺序执行不生成子 Shell。命令分组(命令)开启子 Shell 运行。后台运行命令末尾加不占用终端jobs查看后台任务ps查看进程。协程coproc后台创建子 Shell 并行执行任务可自定义协程名称。五、内建命令 vs 外部命令外部命令独立程序如 ps存放在 /bin、/usr/bin执行会新建子进程速度慢可用which查找路径。内建命令集成在 Shell 内部无需新建进程执行更快cd、exit、history、alias、echo、pwdtype -a可区分命令类型。六、常用内建命令实操1. history 历史命令查看历史指令history历史暂存内存关闭终端才写入隐藏文件.bash_historyhistory -a强制把内存命令写入文件快速复用!!执行上一条、!编号执行对应历史命令对比直接cat .bash_history只能看到上次关机前记录。2. alias 命令别名alias -p查看系统预设别名ll、ls、grep 带颜色等自定义别名alias 别名原命令仅当前 Shell 生效。