【Linux杂货铺】Linux学习之路:期末总结篇1

第一章

什么是Linux?

  1. Linux 是 UNIX 操作系统的一个克隆;
  2. 它由林纳斯 · 本纳第克特 · 托瓦兹从零开始编写,并在网络上众多松散的黑客团队的帮助下得以发展和完善;
  3. 它遵从可移植操作系统接口(POSIX)标准和单一 UNIX 规范标准;
  4. 具有现代成熟的 UNIX 操作系统的所有功能,包括真正的多任务、虚拟内存、共享库、按需加载、规范的内存管理等;
  5. 最初基于32位x86的PC开发,现在包括32位和64位版本的处理器。

Linux的诞生、发展依赖着五个重要支柱?

  1. UNIX 操作系统;
  2. MINIX 操作系统;
  3. GNU计划;
  4. POSIX 标准;
  5. Internet网络。

如何理解:Unix –> minix –> (linux) [posix] <- gnu

Unix 作为一个原始的有影响力的操作系统,启发了许多后续的系统,包括用于教学的 minix、基于 Unix 的开源操作系统 Linux(它遵循 POSIX 标准以确保兼容性),以及 GNU 项目(它提供了许多与 Unix 兼容的工具和库,通常与 Linux 内核一起使用以形成完整的操作系统)。


POSIX

  1. POSIX表示可移植操作系统接口(Portable Operating System Interface of UNIX),POSIX标准定义了操作系统应该为应用程序提供的接口标准。其正式称呼为IEEE 1003,而国际标准名称为ISO/IEC 9945;
  2. POSIX的诞生和UNIX的发展是密不可分的,IEEE最初开发 POSIX 标准,是为了提高 UNIX 环境下应用程序的可移植性;
  3. POSIX 并不局限于 UNIX。许多其它的操作系统,例如 DEC OpenVMS 支持 POSIX 标准。

Linux操作系统的版本

  1. Linux 内核;
  2. Linux 发行版:Linux发行版是一个由Linux内核、大量基于Linux的应用软件和工具软件整合而成的操作系统。典型的Linux发行版包括Linux内核、GNU工具和库,附加软件、文档、窗口系统、桌面环境、软件包管理器;
  3. 把 Red Hat、Ubuntu、Debian等直接说成 Linux 其实是不确切的,它们是 Linux 的发行版本,更确切地说,应该叫作“以Linux为核心的操作系统软件包”。

Linux的应用领域?

  1. 传统企业级服务器领域;
  2. 智能手机、平板电脑、上网本等移动终端;
  3. 物联网、车联网等应用场景;
  4. 面向日常办公的桌面应用场景;
  5. 云计算、区块链、大数据、深度学习等应用场景。


第二章

  • Linux发行版为用户提供了GUI(图形用户界面)。GUI有效降低了普通用户使用Linux的难度。而诸如排版、制图、多媒体等代表性的桌面应用,更离不开GUI的支持。

X Window是什么?

  1. X Window采用C/S架构,基于X协议,通过网络进行图形界面存取。
  2. 因此X window是Linux操作系统一个可选的组件。
  3. 它是 UNIX 与类 UNIX 系统最流行的窗口系统;
  4. 它是一个跨网络与跨操作系统的窗口系统,可用于几乎所有的现代操作系统。

与微软Windows的区别?

在这里插入图片描述

  • X Window: 采用C/S架构,基于X协议,通过网络进行图形界面存取。因此X window是Linux操作系统一个可选的组件;
  • 微软Windows: 微软Windows的图形环境与内核紧密结合,图形环境直接访问微软windows内核。

X Window 架构?

  • X 服务器(X server)、X 客户端(X client)和通信协议(X protocol)三部分组成;
  • 基于X协议。1987 年发布了该协议的第11 版。
  • X Window System也被称为 X11 。

在这里插入图片描述

Unity 桌面环境(了解)

  1. Unity 是基于 GNOME 桌面环境的用户界面,由Canocical公司开发,主要用于 Ubuntu 操作系统;
  2. 与 GNOME 及KDE 不同,Unity并不是一个完整完整的桌面环境,它主要实现了桌面环境的面板部分,其他桌面环境要素仍然使用现有方案;
  3. Unity桌面环境与GNOME桌面环境在外观上存在较大差异;
  4. Unity 被设计成的可更高效地使用屏幕空间,与传统的桌面环境相比所消耗的系统资源更少。


第三章

Shell简介

Shell是Linux操作系统的用户界面。Shell提供了用户与系统内核进行交互操作的一种接口。Shell调用了系统内核的大部分功能来执行程序。

  • 解释用户在命令行提示符下输入的命令;
  • 提供个性化的用户环境,通常由Shell初始化配置文件实现;
  • 编写Shell脚本,实现高级管理功能。

history 命令

  • 使用history命令会列出所有使用过的命令并编号;
history			#不加参数,列出近期的命令记录
history 10		#查看最近的10条历史命令记录
history -c		#清空历史记录

grep命令

grep 是一个强大的文本搜索工具,它允许你在文件中搜索特定的字符串或模式,并将匹配的行打印到标准输出。

grep 'hello' file.txt

这将在 file.txt 文件中搜索包含 “hello” 的行,并将它们打印到标准输出。


管道

Shell程序可以将两个或者多个命令(程序或者进程)连接到一起,把一个命令的输出作为下一个命令的输入,以这种方式连接的两个或者多个命令就形成了管道。

管道符:|

#在 /etc/passwd 文件中搜索包含 "zp" 的行
cat /etc/passwd | grep zp

重定向

输入/输出重定向就是改变输入输出的方向。

输出重定向

输出重定向是指命令的结果不再输出到显示器上,而是输出到其他地方,一般是文件中。

#将某个命令执行的输出保存到文件中
[命令] > [文件]		#输出重定向,文件中已存在相同的文件,那么覆盖源文件中的内容。
[命令] >> [文件]	#输出追加重定向

输入重定向

输入重定向就是改变输入的方向,不再将键盘作为命令输入的来源,而是使用文件作为命令的输入。

#输入重定向
[命令] < [文件]		#将文件的内容分作为命令的输入#例子:
#wc 是一个常用的 Unix/Linux 命令,用于计算字节数、字数和行数。
#-l 选项指定了 wc 只计算行数。
wc -l < /etc/profile	#27
#输入追加重定向
#当前标准输入来自命令行的一对分隔符之间的内容。
[命令] << [分隔符]
> [文本内容]
> [分隔符]#例子:
wc -l <<EOF
> 1111111
> 2222222222222222
> 333333333333
> 44444444444444
> EOF	#4

错误重定向

错误重定向,即将某一命令执行的出错信息输出到指定文件中。

[命令] 2> [文件][命令] 2>> [文件] #输入追加重定向,将错误信息添加到已存在的文件

命令排列

命令排序:是指希望一次执行多个命令。

#使用 ";" 连接时,先执行命令1,不管命令1是否出错,接下来都会执行命令2
命令1; 命令2#使用 "&&" 连接时,只有当命令1运行完毕并返回正确结果后,才会执行命令2
命令1 && 命令2#使用 "||" 连接时,只有当命令1执行不成功(产生一个非0的退出码)时,才能执行命令2
命令1 || 命令2

命令续行

命令续行:通常指的是将一个长命令或语句分成多行来输入或编写的功能。

#转义符
#对特殊字符进行转义:
echo "\$zp"		#输出结果$zp#命令续行
#再反斜杠后面紧跟按回车键,表示下一行是当前行的续行。
mv \
> zp \
> zpdir #"mv zp zpdir"表示将zp文件移动到zpdir目录中

pidof命令

pidof 命令用于查找与给定程序名相关的所有进程的进程ID(PID);


命令替换

可以将一个命令的结果作为命令的参数,这就是命令替换

#使用 "$()"
命令1 $(命令2)#使用 "``"
命令1 `命令2`#例子
vi &	#以后台方式启动vi进程
kill -9 $(pidof vi) #通过命令替换,查找并杀死vi进程
#解释:
#pidof vi 会返回所有与 vi 或 vim 相关的进程的PID
#$() 是一个命令替换,它会执行括号内的命令,并将其输出替换到当前位置
#$(pidof vi) 会被替换为与 vi 或 vim 相关的所有进程的PID列表

命令别名

命令别名(alias):允许用户为命令或命令组合定义简短的替代名称。这可以提高命令行界面的效率,特别是当你需要频繁执行复杂的命令或命令组合时。

#查看已定义的别名
alias#创建别名
alias [别名]=[需要定义别名的命令]	#如果命令中有空格,需要使用双引号""#使用别名——与普通命令使用方法一样#取消别名
unalias [别名]

Linux命令行帮助系统

#使用man命令获取帮助 —— 用于查看Linux操作系统的手册,主要资源位于/user/share/man
man [选项] [名称]#使用info命令获取帮助 —— 具有更强的交互性
info 命令名称#使用--help选项获取帮助 —— 可以显示命令的使用方法和命令选项的含义。
命令名称 --help

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/365532.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[机器学习]-4 Transformer介绍和ChatGPT本质

Transformer Transformer是由Vaswani等人在2017年提出的一种深度学习模型架构&#xff0c;最初用于自然语言处理&#xff08;NLP&#xff09;任务&#xff0c;特别是机器翻译。Transformer通过自注意机制和完全基于注意力的架构&#xff0c;核心思想是通过注意力来捕捉输入序列…

Pycharm中安装Pytorch的库

step1&#xff1a; step2&#xff1a; step3&#xff1a; pip install torch torchvisionstep4&#xff1a; pip install numpy<2 # 版本低点&#xff0c;和pytorch版本不兼容&#xff0c;我当时是用的2.0的step5&#xff1a; pip install pandasstep6&#xff1a; …

累积势函数分类

本篇文章是博主在人工智能等领域学习时&#xff0c;用于个人学习、研究或者欣赏使用&#xff0c;并基于博主对人工智能等领域的一些理解而记录的学习摘录和笔记&#xff0c;若有不当和侵权之处&#xff0c;指出后将会立即改正&#xff0c;还望谅解。文章分类在AI学习笔记&#…

[BUUCTF从零单排] Web方向 02.Web入门篇之『常见的搜集』解题思路(dirsearch工具详解)

这是作者新开的一个专栏《BUUCTF从零单排》&#xff0c;旨在从零学习CTF知识&#xff0c;方便更多初学者了解各种类型的安全题目&#xff0c;后续分享一定程度会对不同类型的题目进行总结&#xff0c;并结合CTF书籍和真实案例实践&#xff0c;希望对您有所帮助。当然&#xff0…

《数字图像处理与机器视觉》案例三 (基于数字图像处理的物料堆积角快速测量)

一、前言 物料堆积角是反映物料特性的重要参数&#xff0c;传统的测量方法将物料自然堆积&#xff0c;测量物料形成的圆锥表面与水平面的夹角即可&#xff0c;该方法检测效率低。随着数字成像设备的推广和应用&#xff0c;应用数字图像处理可以更准确更迅速地进行堆积角测量。 …

Java中反射的使用

无参构造器 方法的调用 package com.studio;import java.lang.reflect.Method;class User {private String name;/*无参构造器*/public User() {}public String getName() {return name;}public void setName(String name) {this.name name;}Overridepublic String toString…

基于STM32的智能门锁控制系统

目录 引言环境准备智能门锁控制系统基础代码实现&#xff1a;实现智能门锁控制系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统实现4.4 用户界面与数据可视化应用场景&#xff1a;门锁管理与优化问题解决方案与优化收尾与总结 1. 引言 智能门锁控制系统通过使用STM32嵌…

【你也能从零基础学会网站开发】(了解)关系型数据库的基本架构体系结构与概念理解

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;程序猿、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01; &#x1f3c5; 欢迎评论 ❤️点赞&#x1f4ac;评论 &#x1f4c2;收藏 &#x1f4c2;加关注 关系型数据库的…

Spring Boot 学习第八天:AOP代理机制对性能的影响

1 概述 在讨论动态代理机制时&#xff0c;一个不可避免的话题是性能。无论采用JDK动态代理还是CGLIB动态代理&#xff0c;本质上都是在原有目标对象上进行了封装和转换&#xff0c;这个过程需要消耗资源和性能。而JDK和CGLIB动态代理的内部实现过程本身也存在很大差异。下面将讨…

StaleElementReferenceException 不再是问题:Google Colab 上的 Selenium 技巧

背景介绍 在现代网页数据抓取领域&#xff0c;Selenium 是一款强大的工具&#xff0c;它使得自动化浏览和数据提取变得异常简单。然而&#xff0c;当面对动态页面时&#xff0c;许多爬虫开发者常常会遇到一个令人头疼的问题——StaleElementReferenceException。这一异常的出现…

MTK7621:交换芯片工作队列

mt7530交换芯片的数据接收中断后,把具体接收数据工作任务、委托到workqueue队列中,让内核work_thread()线程任务来处理,这部分内容请参考《workqueue工作原理》中的描述。 workqueue基本工作流程框架如下: 框架业务关系: 1,程序把work单加入到workqueue中,就等于把工…

java 操作 milvus 2.1.4

1. 确认 docker 运行的 milvus容器镜像版本情况&#xff1a; 2. pom 依赖&#xff1a; <dependency><groupId>io.milvus</groupId><artifactId>milvus-sdk-java</artifactId><version>2.1.0</version><exclusions><exclusi…

压缩包怎么解压,解压压缩包不损坏文件

常见格式&#xff1a; ZIP&#xff1a;最常见的压缩文件格式之一&#xff0c;支持跨平台。RAR&#xff1a;另一种常见的压缩文件格式&#xff0c;通常压缩率比ZIP高&#xff0c;但不如ZIP普及。7Z&#xff1a;来自7-Zip的压缩格式&#xff0c;支持更高的压缩率和一些高级特性。…

使用Python绘制太阳系图

使用Python绘制太阳系图 太阳系图太阳系图的优点使用场景 效果代码 太阳系图 太阳系图&#xff08;Sunburst Chart&#xff09;是一种层次结构图表&#xff0c;用于表示数据的分层结构。它使用同心圆表示各个层级&#xff0c;中心圆代表最高层级&#xff0c;向外的圆环代表逐级…

[数据集][目标检测]井盖未盖好检测数据集VOC+YOLO格式20123张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;20123 标注数量(xml文件个数)&#xff1a;20123 标注数量(txt文件个数)&#xff1a;20123 标…

WDG看门狗

1 WDG 1.1 简介 WDG是看门狗定时器&#xff08;Watchdog Timer&#xff09;的缩写&#xff0c;它是一种用于计算机和嵌入式系统中的定时器&#xff0c;用来检测和恢复系统故障。 看门狗就像是一个忠诚的宠物狗&#xff0c;它时刻盯着你的程序&#xff0c;确保它们正常运行。…

Apache ZooKeeper 简介

介绍 Apache ZooKeeper 是一种分布式协调服务&#xff0c;旨在管理和同步大量分布式应用程序。ZooKeeper 是 Apache 软件基金会下的一个开源项目&#xff0c;它解决了维护分布式应用程序的配置信息、命名、分布式同步和组服务的复杂性。本文探讨了 ZooKeeper 的架构、功能、应…

python 压缩数据

requests 是 Python 中一个非常流行的 HTTP 库&#xff0c;用于发送各种 HTTP 请求。下面是一个使用 requests 库发送简单 GET 请求和 POST 请求的示例&#xff1a; 首先&#xff0c;确保你已经安装了 requests 库。如果还没有安装&#xff0c;可以使用 pip 进行安装&#xff…

深入浅出:npm 常用命令详解与实践

在现代的前端开发流程中&#xff0c;npm&#xff08;Node Package Manager&#xff09;已经成为了不可或缺的一部分。它不仅帮助我们有效地管理项目中的依赖包&#xff0c;还提供了一系列强大的命令来优化开发体验。在这篇博客中&#xff0c;我们将深入探讨 npm 的常用命令&…

[数据集][目标检测]游泳者溺水检测数据集VOC+YOLO格式4599张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;4599 标注数量(xml文件个数)&#xff1a;4599 标注数量(txt文件个数)&#xff1a;4599 标注…