Linux操作系统入门-系统篇
前言
Linux操作系统与Windows和MacOS这些系统不同,Linux是黑屏的操作系统,操作方式使用的是指令和代码行来进行,因此相对于Windows和MacOS这些带有图形化界面的系统,Linux的入门门槛和上手程度要更高,当然也有些公司把Linux的图形化界面做出来了,但不在本文谈论的重点。本文主要谈论对于Linux操作系统的理解,以及文件和目录这些抽象的概念,再者是部分文件和目录操作的指令等。以上这些主要都是让大家熟悉并上手Linux的操作方式,主要目标是找感觉,与鼠标操作Windows的差异这种感觉。废话不多说,让我们进入正文来探讨第一个问题吧。
如何学习Linux
与Windows不同,Linux是不具备图形化界面的操作系统,就是说在Linux系统中鼠标是无法使用的也不存在所谓的 桌面(desktop)。此外,由于无法显示画面,因此我们在电脑上娱乐的游戏、电影等等方面的软件都是无法在Linux上看到的。这种操作的不便也给Linux的学习成本增加了,例如我们在Windows中打开桌面上的一个软件的这个过程是移动鼠标双击对应软件的图标即可。但在Linux上需要通过指令的方式切换到该软件所在的目录内,在执行该程序。因此需要大家多花时间来自己实践操作Linux系统才能换来效率的收益。
学Linux主要分为两大部分:系统篇 和 网络篇,本文及此后好几篇都是围绕系统篇来展开。
系统篇主要学习如何操纵Linux操作系统以及Linux操作系统运作的底层原理,网络篇主要围绕Linux与网络相关的知识来展开,如如何建立网络库等。
Linux系统理解
操作Linux系统简单来说就是操控文件和目录的过程,因为在Linux系统中所有的东西都是文件或目录,例如常说的TXT文件、键盘、显示器甚至是网络库在Linux系统面前都是一个个的目录。系统有相似性,这点也说明Windows的底层很可能也是由一个个文件和目录组成的。此后我们学习Linux操作相关指令几乎都是对文件和目录进行操作。
文件和目录
文件和目录是Linux存储级的概念,作用是存储系统使用时的数据,也就是存储用户和维持系统正常运行的数据。文件是直接存储数据,而目录是存储文件或者目录的从而间接存储数据的。注意区分,Windows系统下喜欢把目录叫文件夹,但Linux下仅被称作目录,也就是说目录就相当于Windows系统下的文件夹,或许也有人喜欢把Linux的目录叫文件夹,但目录就是目录,没什么好说的。
文件的分类
文件有多种,在Windows系统下通常能见到像 ‘.txt ‘’.png’ 这种文件,在Windows中主要通过文件后缀来区分文件的属性,但在Linux系统中则不然。Linux主要通过开头第一个符号来区分文件属性,如下图:
文件大概可以分为以下几类:
以属性开头第一个字母作为区分
'.' -- 隐藏文件
'd' -- 目录
'-' -- 普通文件
'c' -- 字符文件
'b' -- 块设备文件
'l' -- 连接文件
'p' -- 管道文件
's' -- socket文件(网络相关)
后续会专门讲一些与文件相关的指令,集中为一个统一的专题,这里暂不做介绍。
目录
什么是目录?目录就是存储文件或其他目录的一块空间,事实上在Linux系统中的所有文件和目录都是存储于一个叫根 目录(/) 的空间底下,也就是说整个操作系统也是运作在一块巨大的目录中的。
Linux目录结构
在数据结构课程中我们知道树这一结构,事实上目录就是一棵树,根节点对应根目录,通过根目录就能用递归的方式来管理子目录。树形结构的存储方式有一个特点,就是一个子节点只有一个父亲,由于同一个父目录下不可出现同名子目录,因此目录的位置具有唯一性,所以才能有统一的管理方式。
了解什么是 路径, 在Windows中路径就是文件或文件夹所处的位置如下图所示:
简单来说,路径就是文件在内存或硬盘中的位置,就相当于文件的家。通常,Linux用 ’ / ’ (反斜杠)作为分隔符Windows则用 ’ \ '(斜杠)作为分隔符。在每个文件创建后,系统都会自动生成两个隐藏目录分别为 [.] 和 [. .],其中** . **表示当前目录, ‘. .’ 表示上级目录。
绝对路径和相对路径
绝对路径: 以根目录为起点终于目标文件或目录(绝对路径具有唯一性)。
相对路径:以某个非根目录为起点终于目标文件或目录(该路径具有相对性)。
~:进入家目录。
-:返回最近访问的目录。
绝对路径是文件位置的唯一地址,通过绝对路径能够定位到目录中的唯一子目录或文件,因此绝对路径具有权威性。相对路径则是按照非根目录来开始的,因此该路径仅具有时效性,如果路径中某个文件或者目录为空则无法得到有效的位置,绝对路径则不同,绝对路径中如果目标文件或者目标目录存在则前面的路径都存在。
一般情况下,建立重要的文件确保文件位置不出错的话都需要绝对路径,但其他大部分情况如路径切换这些都可以随意使用相对路径。
以上是Linux文件与目录的所有内容了,下面介绍一下一下常用的文件操作命令。
文件操作指令
ls指令
格式: [ls + 选项 + 目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。
对于文件,将列出文件名以及其他信息。
常用选项:
pwd指令
格式:pwd
功能:显示用户当前所在的目录。
cd指令
格式:[cd 目录名]
功能:改变工作目录,将当前工作目录改变到指定的目录下。
touch指令
格式:[touch + 选项 + 文件]
功能:touch命令参数可以更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:
mkdir指令
语法:[mkdir + 选项 + dirname…]
功能:在当前目录下创建一个名为“dirname”(自己随意设置名称)的目录
常用选项:
rmdir指令&rm指令
格式:[rmdir + -p + dirname]
适用对象:具有当前目录操作权限的所有使用者。
功能:删除空目录。
常用选项:
格式:[rm + -f/-i/-r/-v + dirname/dir]
适用对象:所有使用者
功能:删除文件或目录。
常用选项:
cp指令
格式:[cp + 选项 + 源文件或目录 + 目标文件或目录]
功能:复制文件或目录
说明:cp指令用于复制文件或目录
常用选项:
mv指令
格式:[mv + 选项 + 源文件或目录 + 目标文件或目录]
功能:
常用选项:
cat指令
格式:[cat + 选项 + 文件]
功能:查看目标文件的内容。
常用选项:
more指令
格式:[more + 选项 + 文件]
功能:more命令的功能类似cat
常用选项:1.[-n] 对输出的所有行进行编号。2.[q] 退出more
less指令
格式:[less + 参数 + 文件]
功能:less与more类似,但less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且less在查看之前不会加载整个文件。
选项:
head指令&tail指令
格式:[head + 参数 + 文件]
功能:head用于显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:[-n] n代表行数,显示的行数。
tail指令
格式:[tail + 必要参数 + 选择参数 + 文件]
功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
以上是本篇文章的全部内容了,感谢大家的关看。