【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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

短信群发策略优化:如何有效降低退订率?

在短信群发营销中&#xff0c;退订率的上升常常影响营销效果。为了降低退订率&#xff0c;提高客户黏性&#xff0c;以下是一些实用的策略建议&#xff1a; 1.合理控制发送频率 过多的短信发送会给客户带来骚扰感&#xff0c;导致退订。因此&#xff0c;应合理控制短信的发送频…

排序算法(C语言版)

前言 排序作为生产环境中常见的需求之一&#xff0c;对整个产品有举足轻重的影响&#xff0c;可以说使用一个合适的排序算法是业务逻辑中比较重要的一部分。今天我们就来介绍常见的排序算法以及实现 排序 所谓排序无非就是按照特定的规则对一组数据就行顺序化。 常见的排序有…

智能语音热水器:置入NRK3301离线语音识别ic 迈向智能家居新时代

一、热水器语音识别芯片开发背景 在科技的今天&#xff0c;人们对于生活品质的追求已不仅仅满足于基本的物质需求&#xff0c;更渴望通过智能技术让生活变得更加便捷、舒适。热水器作为家庭生活中不可或缺的一部分&#xff0c;其智能化转型势在必行。 在传统热水器使用中&#…

论文导读 | 事件因果关系抽取和识别

导读 目前&#xff0c;对事件因果关系的研究主要分为两类任务&#xff1a;事件因果关系识别&#xff08;Event Causality Identification&#xff0c;ECI&#xff09;和事件因果关系抽取&#xff08;Event Causality Extraction&#xff09;。事件因果关系识别旨在检测文本中两…

v5 实现动态时移播放

背景 有用户提出需要从当前时间前一段时间开始播放&#xff0c;比如 10s 前开始播放&#xff0c;或者 1 分钟前开始播放等。 在 v4 中有一个时光回溯功能&#xff0c;可以在配置中指定缓存时间&#xff0c;然后播放时可以指定 submode: 2来播放。 但是弊端是无法动态指定时间…

MySQL实训

项目名称与项目简介 股票交易系统是一个综合性的金融服务平台&#xff0c;它提供了股票买卖、交易查询、用户管理、股票信息管理以及资金账户管理等功能。系统旨在为用户提供一个安全、高效、便捷的股票交易环境&#xff0c;让用户能够实时掌握市场动态&#xff0c;做出合理的…

使用模板方法设计模式封装 socket 套接字并实现Tcp服务器和客户端 简单工厂模式设计

文章目录 使用模板方法设计模式封装套接字使用封装后的套接字实现Tcp服务器和客户端实现Tcp服务器实现Tcp客户端 工厂模式 使用模板方法设计模式封装套接字 可以使用模块方法设计模式来设计套接字 socket 的封装 模板方法&#xff08;Template Method&#xff09;设计模式是一…

CORE Mobility Errorr的调试

在运行CORE tutorial 3中的mobility示例时&#xff0c;出现如下错误&#xff1a; 当看到这个问题的时候&#xff0c;并没有仔细去分析日志和现象&#xff0c;在core-daemon的进程打印界面只看了一下最后的出错堆栈&#xff1a; 2024-06-27 10:43:48,614 - ERROR - _server:_ca…

微信小程序毕业设计-线上教育商城系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

无敌“水刊”,沾稿就收!5本机械工程方向SCI,100%录用,不退稿~评职/毕业首选~

在众多理工科专业中&#xff0c;计算机科学与人工智能、电子电气工程、机械工程、医学、土木工程、生物科学、化学工程以及数学与统计学等八个专业最吃香。 对于这些专业领域的毕业生和寻求职业晋升的在职人士而言&#xff0c;如何在学术界和工业界展现自己的研究成果和实力&am…

Type-C接口快充取电的优势及LDR6328的应用探讨

在当今这个快节奏的社会&#xff0c;电子设备已经成为我们生活中不可或缺的一部分。随着科技的不断发展&#xff0c;对于电子设备充电速度和效率的要求也越来越高。Type-C接口快充取电技术应运而生&#xff0c;以其独特的优势&#xff0c;成为了市场中的一股新势力。而LDR6328作…

家电品牌如何利用3D数字化技术,突破转型瓶颈?

家电行业正经历着从增量市场向存量市场的转变&#xff0c;用户的消费观念也日趋成熟&#xff0c;更加注重产品的体验和服务质量。无论是线上购物平台还是线下实体门店&#xff0c;提供个性化和增强体验感的产品与服务已成为家电市场未来发展的核心驱动力。 51建模网依托“3D数字…

手机如何录屏?小白也能秒变高手

随着智能手机的普及&#xff0c;手机录屏已经成为一种越来越普遍的需求。无论是录制游戏过程、分享操作教程&#xff0c;还是保留重要信息&#xff0c;手机录屏都发挥着重要作用。可是很多人不知道手机如何录屏&#xff0c;本文将介绍三种手机录屏方法&#xff0c;帮助大家轻松…

Java获取class对象3种方式,不同点解析。

Java获取class对象3种方式&#xff0c;不同点解析。 前言 Java获取class对象3种方式&#xff0c;不同点解析&#xff0c;他们是有区别的 创建目标类Apple进行演示&#xff01;&#xff01;&#xff01; OK&#xff01;结束&#xff01;我们就可以看出区别。

PH计仪器校准内容,以及相关注意事项内容

ph计大家一定不陌生&#xff0c;在日常生活中和实验场所&#xff0c;经常会有看到这种计量器具&#xff0c;作为测定ph值的常用仪器&#xff0c;其运用领域可谓十分广泛&#xff0c;不过因为其结构的特殊性&#xff0c;加上传感器的原理问题&#xff0c;其自身的计量校准也需要…

使用函数open()的例子

代码&#xff1a; #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <stdio.h> int main(void) {int fd-1;char filename[]"test.txt";fdopen(filename,O_RDWR);if(-1fd){printf("Open file %s failure!,fd…

六西格玛项目实战:数据驱动,手机PCM率直线下降

在当前智能手机市场日益竞争激烈的背景下&#xff0c;消费者对手机质量的要求达到了前所未有的高度。PCM&#xff08;可能指生产过程中的某种不良率或缺陷率&#xff09;作为影响手机质量的关键因素&#xff0c;直接关联到消费者满意度和品牌形象。为了应对这一挑战&#xff0c…

事务的概念-事务的概念、事务的定义(BEGIN TRANSACTION、COMMIT、ROLLBACK)

数据库系统中的事务&#xff0c;是保证系统在发生故障后或存在并发操作的情况下&#xff0c;数据库中的数据与企业业务结果相一致 一、事务的概念 在许多数据库应用系统中&#xff0c;数据库用来存储现实世界中一些企业的状态信息或其管理的数据 1、概念一 &#xff08;1&a…

OpenGL3.3_C++_Windows(22)

材质&#xff1a; 决定物体在渲染过程中最终视觉呈现的关键因素之一&#xff0c;它通过一系列光学&#xff08;投光物&#xff09;和物理参数&#xff08;反光度&#xff0c;反照率、金属度&#xff0c;折射率……&#xff09;准确模拟现实世界中的材料特性&#xff0c;从而增…

MySQL高级-索引-使用规则-单列索引联合索引

文章目录 1、单列索引2、联合索引3、查看表索引4、创建 name 和 phone 索引5、查询 phone17799990010 and name韩信6、执行计划 phone17799990010 and name韩信7、创建联合唯一索引 idx_user_phone_name8、再次执行计划 phone17799990010 and name韩信9、使用了USE INDEX提示来…