1.操作系统的那点事
(1)结论:操作系统是作软硬件管理的软件;
(2)计算机是操作系统,设备驱动,硬件三个相互结合发挥作用的,操作系统是用来管理硬件的,常见的硬件包括CPU,内存,磁盘,显示器等等,操作系统不好直接对硬件进行管理,由设备驱动这个中间层负责让硬件执行某些功能;
(3)在操作系统之上,我们是使用应用程序来满足用户们各种各样的需求;
(4)为什么要存在操作系统:操作系统通过管理软硬件,给用户提供安全稳定的操作环境,这个就是操作系统存在的意义,换言之,没有操作系统,就没有我们平常使用的安全稳定的操作环境;
(5)衡量指标:稳定安全快速是衡量一个操作系统好坏的基本指标;
(6)下面就是计算机的层次结构:
(7) 我们在计算机上面进行的所有软件指令,都会自顶向下通过操作系统转换到硬件层面上,因此我们可以知道几乎所有的软件都和我们的操作系统有关;
2.Linux操作特点
(1)存命令行为主,也有图形化界面;
(2)无论是命令行,还是图形化界面,本质都是一样的,因为都是通过命令行或者指令触发操作系统满足用户体验
3.Linux基本指令
(1)文件
我们下面的一些指令是和文件是相关的,因此我们在这里有必要重新认识一下文件;
这里的文件不同于C语言学习时候的文件,我们必须要了解相关的一些指令到底是对文件做了哪些事情?
首先提及一个很简单的问题,当我们在自己的磁盘里面创建一个新的文件夹,但是却没有写入任何数据,也就是一个空的文件夹;这个时候是否占据内存?
这里我们必须重新认识一下文件:文件=文件的内容+文件相关的属性;
我们创建的虽然是一个空的文件,但是上面是有创建的时间,修改的日期,文件的类型,文件的大小,文件的名字,这些都属于文件的属性;因此文件的名字也是属于文件的属性的,不然的话这些信息怎么会被我们看到呢?
(2)mkdir&&ls
mkdir这个指令是创建新的文件,我们可以使用这个文件创建新的文件;
使用ls指令可以查看相关的文件;
下面的是我使用这两个指令创建的文件,并使用ls指令查看创建的文件名字:
按照这个思路,我们可以多创建几个,最后使用ls输出相关的文件名字:
这个就是创建3个文件之后,使用ls指令输出的文件的名字,当然文件的名字也是属于文件的属性的,如果我们想要知道和文件相关的更多属性,可以使用下面的指令:
(3)ls -l指令
这个指令是和上面的ls指令有关系的,我们在原来的ls基础上面添加上-l指令,注意这里是斜杠加上l字母,这个ls和斜杠之间可以有多个空格,但是我们建议一个空格;
通过下面的事例我们也可以看出来,无论中间有多少空格,打印的结果是一样的,ls后面加的斜杠l就是list的首字母缩写,显示的就是比ls更加完整的文件的属性信息,可能某些内容我们看不懂,但是我们能看懂这个创建的时间,和文件的名字,创建的日期,使用这个指令可以获得比ls更加复杂的文件属性信息。
在ls -l的基础上,我们可以使用ll进行代替,ll就是ls -l的缩写,两个的效果是一样的,请看下面的测试用例:
(4)相对路径和绝对路径
下面的是Linux里面的目录结构,显然这个是一个多叉树状的结构;
最上面的向左斜的斜杠是一个表示的根目录的符号,下面的就是子目录,一个文件里面可以有多个目录,我们可以使用绝对路径找到对应文件子目录;
绝对路径和相对路径的对比:绝对路径一般都是比较长的,因此你可能想使用相对路径,但是对于相对路径而言,只要文件的位置改变,我们就无法找到我们想要的文件了,但是绝对路径的话,我们是一定能够找到对应的文件的,可见,两者各有优缺点;
(5)touch指令
这个指令就是创建普通的文件;
(6)mkdir指令
这个命令的作用就是创建对应的目录;
我们在linux里面看到的一个点表示的是当前的目录,两个点表示的是上个层级的目录,每个节点的子节点可能会有很多歌,但是父节点只会有一个,因此我们可以使用这个两个点一直找到根目录。
(7)rm-rf强制删除
这个指令就是强制删除一些我们的目录(不可以是根目录,否则会报错),如果我们的文件或者是目录比较多,每次我们进行删除操作的时候,系统都会提示你是否真的删除,我们都要输入y(yes)这样才能真正的删除,我们使用这个指令就是让这个系统不再进行提示,直接进行删除的操作。