当前位置: 首页 > news >正文

理解Shell学习笔记

一、什么是 Shell

Shell 是用户和 Linux 内核交互的程序,既是命令交互界面,也能写.sh脚本程序;系统默认主流为 Bash。

二、Shell 常见类型

  1. 主流:bash(系统默认)、sh、dash、csh、ksh

  2. 用户默认 Shell 配置在/etc/passwd最后一列;输入/对应shell名可手动切换,exit退出。

  3. 脚本首行#!/bin/bash指定脚本解释器。

三、Shell 父子进程

  1. 打开终端默认是父 Shell;输入bash会生成子 Shell

  2. 查看进程树:ps --forest,PID 为进程号,PPID 是父进程号。

  3. 子 Shell 单独环境,执行exit逐层退出回到父 Shell。

  4. 判断是否存在子 Shell:echo $BASH_SUBSHELL,0 = 无,大于 0 = 有子 Shell。

四、Shell 几种运行模式

  1. 单行多命令:用;分隔,顺序执行,不生成子 Shell。

  2. 命令分组(命令):开启子 Shell 运行。

  3. 后台运行:命令末尾加&,不占用终端;jobs查看后台任务,ps查看进程。

  4. 协程coproc:后台创建子 Shell 并行执行任务,可自定义协程名称。

五、内建命令 vs 外部命令

  1. 外部命令:独立程序(如 ps),存放在 /bin、/usr/bin,执行会新建子进程,速度慢;可用which查找路径。

  2. 内建命令:集成在 Shell 内部,无需新建进程,执行更快(cd、exit、history、alias、echo、pwd);type -a可区分命令类型。

六、常用内建命令实操

1. history 历史命令

  • 查看历史指令:history

  • 历史暂存内存,关闭终端才写入隐藏文件.bash_history

  • history -a:强制把内存命令写入文件;

  • 快速复用:!!执行上一条、!编号执行对应历史命令;

  • 对比:直接cat .bash_history只能看到上次关机前记录。

2. alias 命令别名

  • alias -p:查看系统预设别名(ll、ls、grep 带颜色等);

  • 自定义别名:alias 别名='原命令',仅当前 Shell 生效。

http://www.jsqmd.com/news/1147083/

相关文章:

  • LTC1864 ADC与PIC18F25K40的SPI接口高精度数据采集方案
  • 2026年苏州智能自动化设备企业全景盘点:视觉检测与半导体封测新趋势
  • Podman 配置国内镜像
  • 用 RAG+FAISS 构建古诗词 AI 取名系统:从向量检索到六层质量过滤的实战
  • 高精度ADC与MCU组合在嵌入式信号采集中的应用
  • GEO实操|解决AI不引用品牌问题,拆解实体采信优化方案
  • 高压安全隔离技术:ISOM8710与STM32F722VE应用解析
  • NBM5100A与MK20DN128VFM5的低功耗电源管理方案
  • 中小企业也能轻松玩转大模型:5个真实案例,收藏起来直接抄!
  • ADP5350与STM32L152ZD构建高效电源管理系统
  • 164万下载爆红背后:BabyGenie的“AI宝宝预测”轮回,与AgentOS时代的“萌娃工厂”新范式
  • ComfyUI-VideoHelperSuite深度解析:视频工作流的架构设计与实战应用
  • OpenClaw部署实战:Node.js+Python双运行时轻量级AI技能网关
  • 美陈制作行业技术痛点与落地优化方案|工艺、产能、交付维度解析
  • AI 搜索获客哪家技术强
  • 全球磁履带机器人市场需求与投资战略规划分析报告2026年版
  • STM32与MCP3202实现锂电池电压平衡方案详解
  • ESP8266 智能插座 PCB 实战:从原理图到 2 层板布局的 5 个安全与 EMC 设计准则
  • Grounding DINO vs GLIP vs OV-DETR:3 款开放集检测器零样本性能与效率对比
  • 智慧农业领域“作物病虫害识别”高价值专利案例:基于计算机视觉的作物病虫害识别方法
  • 城通网盘终极解决方案:3分钟搞定高速下载的免费神器
  • 前端轻量交互+后端深度校验:2026图形验证码方案安全架构与选型建议
  • 基于TPA3128D2与PIC18F87J50的高效D类音频放大器设计
  • 带标注的焊缝缺陷识别,可识别裂纹,气孔,烧痕数据集,识别率91.8%,5993张图,支持yolo,coco json,voc xml,文末有模型训练代码
  • 蓝牙5.4双模音频方案:IDC777-1与PIC18F4458开发指南
  • 机器人视觉-物理推理评估: bridging the gap from pixels to physics
  • STM32F207ZG与ADS122U04高精度ADC系统设计与优化
  • 锂离子电池组电压平衡方案与优化实践
  • LTC1864 ADC与PIC18LF27J53的SPI通信优化实践
  • 基于MCP3202与PIC18F85K90的锂电池电压均衡方案