Linux的历史背景和基本指令

article/2025/10/19 0:11:37

    众所周知,Linux和大家所熟悉的Windows一样,也是一款操作系统,不同的更多是在于Windows是闭源的,而Linux是开源的现代生活中的比如飞机的控制系统、银行的系统、手机的系统等等,都和Linux操作系统相关,所以Linux的重要性几乎令人难是置信,没有 Linux的世界可能将会截然不同。总之,学好Linux这个操作系统的重要性是不言而喻的!现在就和我一起学习Linux的历史背景和基本命令吧!!!

在这里插入图片描述
                                    我们都会在各自喜欢的事情里,变得可爱!

文章目录

  • 一、Linux的背景
        • UNIX发展的历史
        • Linux发展历史
  • 二、工具和环境配置
  • 三、Linux的基本指令
  • 四、总结+思维导图

提示:以下是本篇文章正文内容,下面案例可供参考


一、Linux的背景

1.1发展史

你可能要问Linux从哪里来?它是怎么发展的?在这里简要介绍Linux的发展史。要说Linux,还得从UNIX说起。

UNIX发展的历史

  • 1968年,一些来自通用电器公司、贝尔实验室和麻省理工学院的研究人员开发了一个名叫Multics的特殊操作系统。Multics在多任务文件管理和用户连接中综合了许多新概念。
  • 1969-1970年,AT&T的贝尔实验室研究人员Ken Tompson和Dennis Ritchie,在采用很多Multics特点的基础上开发了UINX系统。它运行在小型机上,满足了系统对科研环境的要求。从产生开始,UNIX就是一个有价值的、高效的、多用户和多任务的操作系统。
  • 1972年,贝尔实验室开始发放商业版本,并且给不同的用户授权使用这个系统,使用者之一是加州大学伯克莱分校的计算机系。伯克莱给系统增加了许多新的特点,后来成为了标准。
  • 1975年伯克莱由下属部门BSD发行了自己的UNIX版本。UNIX的BSD版本成为AT&T贝尔实验室版本的主要竞争者,而其它的独立开发出的UNIX版本也开始萌生。
  • 1980年微软公司开发了叫做Xenix的UNIX PC版本。AT&T发行了第一个商业版本。名叫System Ⅲ,后来被成为对商用软件产品良好支持的System Ⅴ所替代。
  • 1991年,UNIX综合实验室综合了System V Release3,SUN OS和Xenix的所有特点,发行了System V Release 4。为了与System V Release 4 竞争,一些其它公司,如IBM和惠普Open Software Foundation(OSF)去产生自己的UNIX标准版本,继而出现了两个标准商业版本OSF版本和System Release 4。

Linux发展历史

-1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。读者也许猜想所发布的这个系统应该是Linux的0.01版本,实际上不是这样。真正的Linux 0.01版本并没有被发布,原因是0.01版本不实用。Linus仅仅在第一个Linux的FTP站点(ftp://nic.funet.fi)上提供过这个版本的的源代码。

  • Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。
  • Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正是公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布。

1.2开源的故事

    之前我们讲到为什么Linux操作系统在我们生活中有这么广泛的引用,很大部分原因就是因为Linux是开源的操纵系统,支持全世界的工程师们去修改,去提高Linux操作系统的稳定性。接下来我们讲讲Linux开源的故事。

  • Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。
  • Linux是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。随着Linux操作系统飞速发展,各种集成在Linux上的开源软件和实用工具也得到了应用和普及,因此,Linux也成为了开源软件的代名词。
    1.3官网
        Linux官网
        大家可以在官网查看一些信息,以及下载一些内核文件之类的。
    1.4发行版本
  • Debian运行起来极其稳定,这使得它非常适合用于服务器。
  • Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。
  • 红帽企业级Linux,这是第一款面向商业市场的Linux发行版。
  • CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。
    等等…

我们通常买云服务器的时候用的就是CentOS版本的。

1.5对操作系统和Linux操作系统的理解
    为什么要有操作系统?

    原因是:单纯的硬件计算机操作起来效率特别低下,难度特别高。

    那什么是操作系统和Linux操作系统?

    一句话什么是操作系统和Linux操作系统 :对下要管理好底层的软硬件资源对上要给用户提供一个良好的,稳定的,高效的运行环境


二、工具和环境配置

2.1XShell工具
    我们之后写Linux代码通常都不是打开网页去登录我们买的云服务器,通常都是打开xshell这个工具,远程登录我们的云服务器。所以,XShell 是一个远程终端软件。
2.2下载官网
XShell下载官网

2.3xshell的配置和连接云服务器
    这里我们用我之前配置xshell的时候看的一篇博客分享给大家。这位博主写的确实很好!
【Linux】使用腾讯云搭建CentOS的Linux编程学习环境,实现多用户使用同一个云服务器


三、Linux的基本指令

1. ls指令

语法: ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

首先,ls指令有很多,比如:

  • ls + -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • ls + -l 列出文件的详细信息。
  • ls + -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件.
  • ls + -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
    等等…

ls - a 和 ls -l 是最常用的
代码示例:

[root@VM-12-13-centos lesson]# ls //只显示文件名
code  test.c
[root@VM-12-13-centos lesson]# ls -l//显示文件的更多属性
total 4
drwxr-xr-x 2 root root 4096 Oct 22 15:17 code
-rw-r--r-- 1 root root    0 Oct 22 15:16 test.c[root@VM-12-13-centos lesson]# ls -al
total 12
drwxr-xr-x  3 root root 4096 Oct 22 15:46 .		(. 是隐藏文件)
dr-xr-x---. 9 root root 4096 Oct 22 15:15 ..
-rw-r--r--  1 root root    0 Oct 22 15:46 .cannotsee.txt
drwxr-xr-x  2 root root 4096 Oct 22 15:17 code
-rw-r--r--  1 root root    0 Oct 22 15:16 test.c

2. pwd指令

语法: pwd
功能:显示用户当前所在的目录

代码示例:

[root@VM-12-13-centos ~]# pwd
/root

3. cd指令

语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下。

一般是和pwd可以配合使用

文件和目录的树形结构
在这里插入图片描述
Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

pwd指令和cd指令配合使用代码示例:

[root@VM-12-13-centos lesson]# cd ..
[root@VM-12-13-centos ~]# ll
total 8
drwxr-xr-x 2 root root 4096 Oct 22 15:15 2
drwxr-xr-x 3 root root 4096 Oct 22 15:46 lesson
[root@VM-12-13-centos ~]# pwd
/root
[root@VM-12-13-centos ~]# cd ..
[root@VM-12-13-centos /]# pwd
/
[root@VM-12-13-centos /]# //回退到/的时候就不能再回退了, /也叫根目录

cd - :是回去上一个目录,可加可减
cd …/是去上一个目录,只能往根目录走

4. touch指令

语法: touch [选项]… 文件…
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

touch这个命令创建文件非常重要,因为有一句话“Linux下,一切皆文件“, 如果我们连文件怎么创建都不知道,那还怎么在Linux下写代码?

touch对应的指令有很多,比如:

-a 或–time=atime或–time=access或–time=use只更改存取时间。
-d 使用指定的日期时间,而非现在的时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-m 或–time=mtime或–time=modify 只更改变动时间。
…等等

代码示例:

[root@VM-12-13-centos lesson]# touch file.txt
[root@VM-12-13-centos lesson]# ls
code  file.txt  test.c

5.mkdir指令

语法:mkdir [选项] lesson目录…
功能:在当前目录下创建一个名为 “lesson”的目录

常用选项:-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
(递归创建多个目录)
利用上面我们学到的几个简单命令,我们已经可以写一些简单的Linux代码了。
代码示例:

[jjx@VM-12-13-centos ~]$ pwd      //显示当前路径
/home/jjx
[jjx@VM-12-13-centos ~]$ ll -s      //查看当前路径下的文件或者目录
total 16
4 drwxr-xr-x 2 jjx root 4096 Oct 31 18:10 lesson1
4 drwxr-xr-x 2 jjx root 4096 Nov  1 16:19 lesson11_01
4 drwxr-xr-x 2 jjx root 4096 Nov  3 17:33 lesson11_02
4 drwxr-xr-x 2 jjx root 4096 Nov  5 17:28 lesson11_03
[jjx@VM-12-13-centos ~]$ mkdir lesson11_07      ///创建lesson11_07这个目录
[jjx@VM-12-13-centos ~]$ ll -s
total 20
4 drwxr-xr-x 2 jjx root 4096 Oct 31 18:10 lesson1
4 drwxr-xr-x 2 jjx root 4096 Nov  1 16:19 lesson11_01
4 drwxr-xr-x 2 jjx root 4096 Nov  3 17:33 lesson11_02
4 drwxr-xr-x 2 jjx root 4096 Nov  5 17:28 lesson11_03
4 drwxr-xr-x 2 jjx root 4096 Nov  7 20:54 lesson11_07
[jjx@VM-12-13-centos ~]$ cd lesson11_07
[jjx@VM-12-13-centos lesson11_07]$ cd lesson11_07
-bash: cd: lesson11_07: No such file or directory
[jjx@VM-12-13-centos lesson11_07]$ pwd
/home/jjx/lesson11_07
[jjx@VM-12-13-centos lesson11_07]$ ll -s
total 0
[jjx@VM-12-13-centos lesson11_07]$ touch file.txt      //创建file.txt这个文件
[jjx@VM-12-13-centos lesson11_07]$ ll -s
total 0
0 -rw-r--r-- 1 jjx root 0 Nov  7 20:54 file.txt

四、总结+思维导图

4.1思维导图
在这里插入图片描述
4.2小结
在这里插入图片描述
    本文总共六千多字,介绍了Linux这款操作系统的历史,带大家了解了为什么Linux操作系统为什么这么重要,以及xshell这款好用的远程登录云服务器的app,也介绍了几个Linux的基本命令,希望大家读后能够有所收获!


http://chatgpt.dhexx.cn/article/3q0MyeiI.shtml

相关文章

Linux安装围棋AI(q5go和katago)

最近一个多月开始学习围棋,因为平时常用的系统是Linux,所以想要在Linux上安装一个围棋AI,可以借助AI分析棋局。经过一番查找,决定使用q5go和katago,安装还是挺复杂的,特地记录(/摸鱼&#xff09…

Linux 常用命令 查看 CPU 信息

强力推荐-不要错过,万一能帮助到自己呢? 推荐一个网站,关于人工智能教程,教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里…

Linux命令查看Linux服务器内存、CPU、显卡、硬盘使用情况

查看内存使用情况 使用命令: free -m 大致结果类似下图: 内存占用情况 参数解释: Mem行(单位均为M): total:内存总数used:已使用内存数free:空闲内存数shared&…

Ai-WB2系列模组linux开发环境搭建

文章目录 一、Ubuntu安装1.1 安装VMware Workstation Pro1.2 安装Ubuntu 二、编译三、烧录固件到设备3.1 方式一:用命令行烧录3.2 方式二:用可视化软件烧录(windows) 三、自定义工程如何修改Makefile四、开发资料 一、Ubuntu安装 …

用js动态显示当前时间

用setTimeout动态显示当前时间&#xff1a; <div class"showTime"></div> <script>var t null;tsetTimeout(time,1000);//开始运行function time(){clearTimeout(t);//清除定时器dt new Date();var y dt.getFullYear();var mt dt.getMonth()1…

js 获取当前gmt时间_javascript怎么获取当前时间?

javascript怎么获取当前时间&#xff1f;下面本篇文章就来给大家介绍一下使用javascript获取当前时间的方法&#xff0c;希望对大家有所帮助。 在JavaScript中可以使用Date对象中的Date()方法来获取当前时间。Date 对象用于处理日期和时间&#xff0c;Date()方法可返回当天的日…

【JavaScript】动态显示当前时间

可以实现动态显示当前时间&#xff0c;年月日时分秒星期几等&#xff0c;用12小时制表示&#xff0c;并能根据时间显示am&#xff08;上午&#xff09;&#xff0c;pm&#xff08;下午&#xff09;。 文章目录 一、基础知识二、动态显示系统当前时间1.代码2.展现效果 一、基础知…

用js显示当前时间

目录 以下是我全部代码 其中&#xff0c;关键代码是js 效果如图所示 关键代码解释如下 setInterval: getElementById: innerHTML: 在初步学习js时&#xff0c;可能会有一些朋友能用上js来显示时间&#xff0c;因此我在此提供一种方法供大家参考。 以下是我全部代码 <…

php js动态显示系统时间,基于javascript实现动态显示当前系统时间

本文实例讲解了javascript实现动态显示当前系统时间的详细代码&#xff0c;具体内容如下 (1)时间日期信息&#xff0c;应该在一个 中来显示 (2)定时器&#xff1a;每隔一秒再次访问系统时间&#xff0c;window对象的setTimeout() (3)时钟显示的时机(事件)&#xff1a;当网页加载…

原生JavaScript实现显示当前系统时间

1.一个html页面实现&#xff0c;js写在html里面 clock.html <!DOCTYPE html> <html> <head><meta charset"UTF‐8"><title>clock</title><style type"text/css">#clock {color: green;font‐size: 30px;}</…

Javascript获得系统当前时间

** 获取系统当前时间 ** 一、步骤与注意事项 首先使用new Date创建时间对象&#xff1b;&#xff08;定义一个Date对象的time&#xff09;分别从time中获取当前年、月、日、分、秒、星期几特别注意&#xff1a;月是从0开始的&#xff08;即1月是0&#xff09; 二、代码实现…

JavaScript动态显示当前时间

前端写项目时, 有时会需要获取当前时间, 虽然使用度不高, 难免有需要的时候. 下面整理获取当前时间代码思路 使用 new Date() 获取 当前时间的时间戳 getFullYear(): 时间戳转换的年份getMonth() 1: 月份getDate(): 日期getHours()getMinutes()getSeconds() 根据需要获取…

JavaScript 当前时间显示(js)

先设置一个空的div <div id"app"></div> js&#xff1a; <script>let _appdocument.getElementById("app");//计时调用let idsetInterval("test()",1000);function test() {let date new Date(); //当前时间let year dat…

大数据应用及其解决方案(完整版)

目录 1、大数据概述 1.1. 概述 1.2. 大数据定义 1.3. 大数据技术发展 2、大数据应用 2.1. 大数据应用阐述 2.2. 大数据应用架构 2.3. 大数据行业应用 2.3.1. 医疗行业 2.3.2. 能源行业 2.3.3. 通信行业 2.3.4. 零售业 3、大数据解决方案 3.1. 大数据技术组成 3.…

干货!大话EXT4文件系统完整版

一&#xff1a;VFS 我们知道SSD是一场存储革命&#xff0c;设计和制造一个好的SSD固然重要&#xff0c;但如何正确使用以充分发挥SSD性能同样重要。SSD内在的并行性和先擦再写的特性决定了它不同于机械硬盘简单的LBA和存储块一一对应&#xff0c;要充分挖掘SSD的并行性&#xf…

对话腾讯云专家工程师常青,聊一聊全真互联网的“小小”变化

点击上方“LiveVideoStack”关注我们 三年时间&#xff0c;从“懵懂少年”到能从容应对客户需求&#xff0c;拥有更加成熟和成体系的业务线&#xff0c;覆盖更多场景的产品线&#xff0c;不仅有音视频的传输&#xff0c;还有实时消息的通讯&#xff0c;以及视频内容的制作。这背…

PM到SM,个人蜕变组织转型

转自本人运营的公众号“ 携程技术中心PMO”&#xff08;ID&#xff1a;cso_pmo&#xff09; 作者简介 李卫红&#xff0c;曾在博世工作13年&#xff0c;从项目经理&#xff0c;到项目管理流程&#xff0c;考核&#xff0c;培训&#xff0c;教练体系的构建&#xff0c;再到项目…

BCI2008中文翻译版

BCI2008中文翻译版 转载来源 转载来源 https://blog.csdn.net/shenshikexmu/article/details/51251769 如论文[1]发表的那样&#xff0c;数据包含9个被试的脑电EEG数据。被试都是右利手&#xff0c;有正常或者矫正正常视力&#xff0c;并且领取实验报酬。所有被试坐在有扶手的…

阿里P9专家右军:以终为始的架构设计

P 右军 读完需要 17分钟 速读仅需 6 分钟 右军(于君泽)&#xff0c;蚂蚁金服P9技术专家&#xff0c;在 IT 领域从业超过十五年。对 高并发、分布式架构、内建质量、研发管理有一些心得。维护公众号“技术琐话”&#xff0c;合著有《深入分布式缓存》、《架构宝典》、《程序员的…

精准测试系列产品白皮书2020版

上篇【星云精准测试】 &#xff08;附精准测讲解视频和白皮书下载&#xff09; 第一章 精准测试诞生的背景 20年前&#xff08;2000年&#xff09;&#xff0c;上网是一件很酷的事&#xff0c;叫做“网上冲浪”&#xff0c;主要是几个门户网站占据绝大多数注意力&#xff1b…