Linux 1.0.4

article/2025/7/5 18:46:00
父子shell

linux研究的就是shell
打开两个窗口就是两个shell
终端的软件有很多
bash也是一个软件
在这里插入图片描述
我们在terminal里面再打开一个bash,然后再次使用ps命令发现多出来一个bash,之后点击exit只是显示了一个exit,这个只是退出了在terminal中打开的bash

在这里插入图片描述
再使用ps命令发现之前的哪个bahs也消失了
这其中分为父shell子shell
上图中PPID意思就是他的父shell的位置
这样子可以一级一级往下推
孙子->父亲->爷爷
在一个窗口里面打开了好几个bash
有一个有意思的命令ps --forest

在这里插入图片描述

分号在命令里的作用

可以使用;来隔开各种命令,这样就可以做到依次执行命令的作用

在这里插入图片描述
就会出现这样的效果
还可以给命令加上括号()
加上括号之后就是先创建一个子shell然后来执行这些命令

在这里插入图片描述
但是这里发现并没有进入到根目录,主包猜是子shell进去了,但是父shell没进去
echo $BASH_SUBSHELL,这条命令可以显示子shell的数量
在这里插入图片描述
这里echo没加括号
这里echo加括号
有点奇怪,多加几个括号就多了几个子shell
但是这个括号好像加的有点说法
现在只要知道有这么回事就行了

sleep和jobs

没什么屌用
sleep + 数字就是让你的终端延迟几秒再执行
在这里插入图片描述
想停止也没招,只有强行停止进程
但是就这样挂在前台我啥也做不了
所以希望这个可以放到后台去执行
sleep + 数字&
在这里插入图片描述
这时候会给你这个进程的PID
然后你就可以进后台看看
嗷,就是你小子在我后台挖矿呢是吧
干掉他就使用kill
在企业里的话,如果使用ps就显示的太多了
有个更好的选择jobs,就是看看后台谁在干活
jobs -l很实用的命令
在这里插入图片描述
等到任务结束之后就不是Running,就变成Done,意思就是已经执行完毕了
那为什么要使用sleep呢?
因为有些软件确实需要sleep来延迟去执行

后台用法的举例

假如说我要执行打包命令
(tar -zxvf ... ; tar -zxvf ...)&,这样就把这个东西放在后台了
个人感觉类似于windows里面的最小化

coproc协程

coproc + 进程名 + { 要执行的命令; }注意里面这个花括号,两边一定要有空格,而且指定的内容一定要以分号结尾
这个的作用和上面的有什么区别呢?
上面是挂在当前shell的后台,而这个是创建了一个子shell挂在子shell的后台
这个好处就是我不想在当前shell处理的话我就可以创建一个子shell来执行
但是这个命令不要随意的使用,虽然这样的方式很自由,但是会造成你的性能大大下降
在这里插入图片描述

外部命令和内部命令

ps -f的时候发现这玩意也算作了一个命令
但是为什么有的程序就没有创建进程呢?
在这里插入图片描述
举个例子ps -f就是为了看到shell里面的所有进程
那就得开个上帝视角,必须另外创建一个进程来专门运行ps -f,才能看到shell这个进程里面的东西
bashps -f这样才是平级的
专业术语叫forking 衍生
观察上面的ps -f发现他的PPID就是原来的bash
他的依赖一定是bash
单独的这样的命令叫做外部命令,因为他是单独的创建了一个进程
但是像cd这样的命令,使用的时候不需要创建进程,这样的命令叫做非外部命令,也叫做内建命令
如果判断?type

在这里插入图片描述

alias别名

history这条命令可以查看你之前使用过的命令
通常情况下保存的是一千多条命令
在这里插入图片描述
history跟踪的命令是可以修改的
!!双感叹号就是执行上一个命令
这里的这里的命令都是被保存到了一个文件中
.bash_history都保存到了这里
在这里插入图片描述

在这里插入图片描述
这里是这个文件的内容
在这里插入图片描述
使用history查看完历史命令之后可以使用! + 对应的命令序号,直接就可以执行对应的命令
alias别名
在这里插入图片描述
这个就可以看到有些命令的别名
可以自己去创建一个别名,就是把好多后缀弄成一个自己熟悉的命令
alias li='li',这样就是创建了一个名字
但是有一个缺点,只能在当前的shell去使用,一旦退出当前终端之后就没了
需要考虑如何设置成为永久的命令来保存起来




micro_frank


http://www.hkcw.cn/article/cIlkNytKmV.shtml

相关文章

挖洞日记 | 记一次MSSQL注入绕waf过程

在挖漏洞时,使用 xia sql 插件发现一个注入点,经过测试发现存在 waf 拦截记录一下。 在查询中发现单引号是空白页面,在加一个单引号,显示空数据,但是有回显,初步判断 pname 存在 SQL注入。 然后判断列数1o…

Linux-pcie ranges介绍

参考链接&#xff1a;https://elinux.org/Device_Tree_Usage#PCI_Host_Bridge pcie bar高低端BAR起始地址介绍 pcie设备树节点 / {compatible "rockchip,rk3588";interrupt-parent <&gic>;#address-cells <2>;#size-cells <2>;pcie3x4: p…

模块化设计,static和extern(面试题常见)

文章目录 一、函数的声明和定义1.1 单个文件1.2 多个文件1.3 static和extern1.3.1 static修饰局部变量1.3.2 static修饰全局变量1.3.3 static修饰函数 总结 一、函数的声明和定义 1.1 单个文件 一般我们在使用函数的时候&#xff0c;直接将函数写出来就使用了 题目:写一个函数…

探讨下LLM 在逻辑推理中的记忆现象

简述 今天刷到一篇推理模型训练的论文&#xff0c;研究解答了我们使用大模型的人困惑&#xff0c;大模型的能力到底是弈中高级的匹配模式还是真的在做逻辑推理 [2410.23123] On Memorization of Large Language Models in Logical ReasoningAbstract page for arXiv paper 24…

deepseekR1模型:Win11本地部署(ollam+DS:8b+chatbox AI)

目录 一、部署工具包二、Ollama安装1. 修改Ollama模型路径&#xff08;不需要修改安装路径可忽略此部分&#xff09;1.1 模型路径原配置1.2 更改模型路径原配置&#xff0c;释放C盘压力 2. 安装Ollama2.1 下载Ollama安装包2.1 安装验证 三、安装大模型&#xff08;博主安装DS-r…

leetcode:7. 整数反转(python3解法,数学相关算法题)

难度&#xff1a;中等 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] &#xff0c;就返回 0。 假设环境不允许存储 64 位整数&#xff08;有符号或无符号&#xff09;。 示例…

ROS 2 中的 robot_state_publisher 和 joint_state_publisher 详解

文章目录 总体简介&#x1f9e9; 1 . joint_state_publisher - 关节状态发布器&#x1f4cc; 核心功能⚙️ 工作原理&#x1f9e0; 主要任务&#x1f4bb; 基本用法 &#x1f9e9; 2. robot_state_publisher - 机器人状态发布器&#x1f4cc; 核心功能⚙️ 工作原理&#x1f9e…

第10讲、Odoo 18框架设计原理全解析

前言 Odoo是一套开源的企业资源规划(ERP)系统&#xff0c;以其模块化、可扩展性和全面的业务应用套件而闻名。Odoo 18作为其最新版本&#xff0c;在架构设计、前端技术和后端实现上都有显著的创新和优化。本文将从前端的OWL组件化、模块化&#xff0c;到后端的ORM封装&#xf…

MPC5744P——eTimer简介

1、eTimer结构图 eTimer模块提供&#xff1a; 六个相同的计数器/定时器通道一个看门狗定时器功能&#xff08;可能并非每个eTimer模块实例都具备&#xff09; 2、eTimer通道结构图 eTimer中的每个计时器/计数器通道结构图如下图所示&#xff0c;每个16位计数器/定时器通道包…

MySQL主从复制---笔记

一、MySQL主从复制架构 常见拓扑 基础一主一从 主库&#xff08;Master&#xff09;处理写操作&#xff0c;从库&#xff08;Slave&#xff09;同步数据并处理读请求。 适用场景&#xff1a;读写分离、数据备份。 一主多从 一个主库对应多个从库&#xff0c;显著提升读性能…

Wayland模式X11模式LinuxFB​​模式,Linux图形显示系统三大模式深度解析

Linux图形显示系统三大模式深度解析&#xff1a;Wayland &#xff0c; X11 &#xff0c; LinuxFB​​ ​​一、技术原理与架构设计​​ ​​LinuxFB&#xff08;帧缓冲直通模式&#xff09;​​ 工作原理​​&#xff1a;直接读写内核帧缓冲设备&#xff08;/dev/fb0&#x…

戴尔AI服务器订单激增至121亿美元,但传统业务承压

戴尔科技121亿美元的AI服务器订单&#xff0c;不仅超过了公司整个2025财年的AI服务器出货量&#xff0c;更让其AI订单积压达到144亿美元的历史高位。 戴尔科技最新财报显示&#xff0c;AI服务器需求的爆炸式增长正在重塑这家老牌PC制造商的业务格局&#xff0c;但同时也暴露出…

葵花数据(Himawari Data)

葵花数据&#xff08;Himawari Data&#xff09;是由日本气象厅&#xff08;Japan Meteorological Agency, JMA&#xff09;通过其静止气象卫星 Himawari 系列&#xff08;ひまわり卫星&#xff09;获取的一类高频率、多波段的地球观测数据。当前在轨运行的是 Himawari-8 和 Hi…

LangChain-LangGraph框架 应用实例

LangGraph是LangChain的高级库,为大型语言模型(LLM)带来循环计算能力。 LangGraph建立在LCEL之上,允许高效地协调应用程序组件,同时保持简洁和可读的代码。它包括内置持久性、对循环的支持,并优先考虑可控性。 如果LCEL对于更大或更复杂的链变得笨重,它们可能会受益于L…

远心镜头 参数与选型

一、简介 远心镜头是一种性能十分优异的镜头&#xff0c;它通常具有超高的中心边缘一致性&#xff0c;极低的畸变&#xff0c;接近衍射极限的光学分辨率 远心镜头的主要作用是消除透视&#xff08;透视就是近大远小&#xff0c;常规镜头因为有视场角&#xff0c;拍摄时离镜头比…

睿抗机器人开发者大赛CAIP-编程技能赛-历年真题 解题报告汇总 | 珂学家

前言 汇总 睿抗机器人开发者大赛CAIP-编程技能赛-历年真题 解题报告汇总 2024年 2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组 (国赛) 解题报告 2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组&#xff08;省赛&#xff09;解题报告 2024 睿抗机器人开发者大赛CAI…

POSIX信号量

目录 初始化信号量 销毁信号量 等待信号量 发布信号量 基于环形队列的生产消费模型 代码实现 POSIX信号量和SystemV信号量作用相同&#xff0c;都是用于同步操作&#xff0c;达到无冲突的访问共享资源目的。本质就是一个计数器&#xff0c;是对特定资源的预定机制&#xff…

P23:实现天气预测

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 一、知识介绍 1. 数据加载与预处理 知识点&#xff1a; pd.read_csv()&#xff1a;Pandas读取CSV文件的核心方法pd.to_datetime()&#xff1a;将字符串转换…

BERT模型原理与Fine-tuning实战指南

BERT模型原理与Fine-tuning实战指南 系统化学习人工智能网站&#xff08;收藏&#xff09;&#xff1a;https://www.captainbed.cn/flu 文章目录 BERT模型原理与Fine-tuning实战指南摘要引言1. BERT核心原理解析1.1 Transformer架构基础1.2 预训练任务设计1.3 模型变体对比 2…

谷歌地图15周年焕新:界面全面升级 功能重磅加码

谷歌卫星高清地图 下载链接&#xff1a;https://pan.quark.cn/s/c6069864c9f3 Google Earth Pro-7.3.6.9796-x64 Google Earth WinMac安装版 GoogleEarthProPortable googleearthpromac-intel-7.3.6.10155 GoogleEarthProWin-7.3.6.10155 GoogleEarthProWin-x64-7.3.6.10…