Linux基本指令(上)

Posted 玄鸟轩墨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基本指令(上)相关的知识,希望对你有一定的参考价值。

@toc

写在前面

好久没有写博客了,学校快要期末考试了,这个是在零碎的时间的拼凑出来了的。闲言少序,在了解了Linux的历史背景后,我们需要开始初步开始学习如何使用Linux系统.


操作系统

我们需要花上一点时间,看看操作系统是什么东西.

由于我们操作硬件效率太过低下,难度也特别高,所以我们发明的操作系统.我们都知道C语言存在printf函数,我们可以通过这个函数在显示器上打印东西,而显示器是硬件,也就是说<font color = red>软件可以修改硬件</font>,我们来看看计算的组成.

  • 最底层 : 硬件 包括键盘 显示器 网卡 显卡
  • 驱动软件层 向下有各种硬件的驱动软件,调度硬件 ,向上提供各种接口
  • 狭义上这一层是操作系统 包含 进程管理 ,文件管理 ,内存管理 ,驱动管理
  • 用户层 包含图形化界面,各种库,应用程序

上面的是很官方的东西,我们用一个例子来举例.我们需要用银行的例子来举例,这也是蛋哥举得.

首先存在一个银行,里面有桌椅板凳和存钱的设备,这些就是硬件,另外存在不同的工作人员来使用这些硬件,他们就是驱动层,银行肯定是有业务的,所以存在业务管理人员负责调度这些驱动人员完成相应的工作.;我们作为用户就是使用手机电脑或者现场办理这些业务,那么手机和电脑就是相应的用户层,其中可能会存在黄牛,他们属于第三方的库,这就是一套银行系统.其中业务管理人员就是我们学的操作系统.

  • 对下 管理底下的软硬件资源
  • 对上 给用户提供一个良好的,稳定的,高效的用户环境

Linux操作系统

既然现实生活中也存在很多种银行,操作系统也是如此,Linux就是其中一款操作系统.

常见指令

为什么要学习指令

我们到底要不要学习指令呢?对于非专业人员不需要掌握,对于我们而言,学习操作系统我们一定需要了解指令.这是肯定的.指令先于鼠标出现,早期的计算机就是为了数据计算,需要键盘输入数据.人们从打字机那里来演变出了键盘,出现了键盘后,所有的操作系统都支持指令操作,知道乔布斯发现了图形化界面的操作系统.指令离OS最近,指令学习可以让我们掌握OS.

指令的选项

几乎所有的指令都会带选选项的,所谓的选项是对这个指令进一步的补充,就比如指令是一个导航搜索的地址,选项就是把这个地址进一步精确的多少米的范围.选项与选项之间是可以共同使用的,这个后面我们用到的时候在谈.

ls 指令

也就是说 在2022_06_03文件夹中包含一个code文件夹和一个file.txt文本文件,ls就可以把它们显出出来.

常用的选项

我们的选项有很多,这里我们先列出一些常用的选项.

  • -l 列出文件的详细信息
  • -a 列出目录下的所有文件,包括以 . 开头的==隐含文件==

通过这个选项我们可以看出该文件是文件夹,还是一个普通文件.

  • 文件夹 也就是子目录 用drwxrwxr-x 表示
  • 普通文件 用-rw-rw-r-- 表示

还可以看到该文件的大小,以及创建时间,可以说是很详细了.

-a可以看到该目录下所有的文件,包含隐藏文件,所谓的隐藏文件,就是不想让别人看到的文件,文件名前面带一个==.==

在Windows环境下,也存在隐藏文件.

我们来看看该选项的用法

一般情况下,我们知道这两个选项已经就够用了,下面还有一些不常用的选项.

  • -d 将目录像文件一样显示,而不是显示其下的文件。 如: ls –d 指定目录(绝对地址)
  • -i 输出文件的 i 节点的索引信息
  • -k 以 k 字节的形式表示文件的大小 ,配合 -l使用
  • -n 用数字的 UID,GID 代替名称 (UID,GID先不用了解)
  • -F 在每个文件名后附上一个字符以说明该文件的类型, “*”表示可执行的普通文件; “/”表示目录; “@”表示符号链接; “|”表示FIFOs; “=”表示套接字(sockets)。(目录类型识别)

. 和 ..

  • . 表示 是当前目录
  • .. 表示是上级目录

touch & mkdir 指令

这是两个指令,作用都是为了创建东西,它们相应的选项也是存在的,但是这里我先不和大家分享,只看它们最基本的功能.

我们看看它们的区别

  • touch 创建文本文件,例如.txt文件
  • mkdir 创建一个文件夹,类似Windows下的新建文件夹

我们先来看看它们的现象.

touch指令

可以创建文本文件,可以一个,可以多个,创建多个的时候,文件之间隔一个空格就可以了.

空文件占据硬盘的资源吗

这是一个常识问题,是占据硬盘资源的,我们在C语言中学过文件指针,它是文件属性之一,这些信息是保存在硬盘当中的,也就是说文件 = 文件内容 + 文件属性.

mkdir 指令

mkdir是创建文件夹的,我们一看就可以明白了.这个指令和touch一样,也可以一次创建多个文件夹,这种我们先不谈,我们要说说另外一种,创建一段路径


rmdir & rm 指令

既然我们已经学了创建指令了,那么删除指令这里我们先提前说了吧.

rmdir

rmdir删除的是文件夹我们先来看看效果.

但是我们有时会遇到这种情况,文件夹里面存在文件,单纯的使用rmdir就不能删除了,所以这个指令我们不常用,下面的rm会解决这个问题的,这才是我们的最爱.

rm

rm是删除普通文件的,我们这里先来看看它的作用.

rm -r

我们可以通过rm -r来删除存在文件的目录,-r是递归的意思.

rm -f

这个指令大家可能还用不到,这里提前说说,有的文件需要很高的权限,我们删除的时候计算机会问"你确定删除这个文件吗?",我们这个选项使用后,他就不会出现了,-f 中f是force的意思.我么就不演示了.


pwd 指令

pwd 这个指令就只有一个作用,查看当前所在的目录,这个很简单.

相对路径&绝对路径

大家都知道什么是绝对路径,就是我们可以通过他给的线索一定可以找到目标.所谓的相对路径是需要一个参考物的,相对路径也是如此,我们是以当前文件所处的地址为参考对象.

我们需要谈谈目录,目录是具有唯一性的,在Linux下,它们是由树形结构组成的.

  • 相对路径 以当前文件为参考对象
  • 绝对路经 从根目录出发,pwd查出的就是绝对路径

cd指令

我们在Windows环境下如何进入文件夹中,又是如何回到上级目录呢?我们可以通过点击鼠标来进行.

但是在Linux中,我们通过cd指令来操作,来看看把.

使用相对路径

我们可以cd时用相对路径,这样进入的就是该目录下的文件夹.

使用绝对路径

我们已经学过了pwd指令了,如果我们想要一次性跳到我们想要的目录下,可以使用绝对路径.我们看看

cd 回到上级目录

我们如何在Linux中回到上级目录呢?前面我们谈到了==..==表示是上级目录的意思,这样我们可以通过通过下面的指令来进行

这里有一个问题,如果我们一直回到上级目录,会发生什么情况?我们会看到下面的情况.

我们会一直停留在一个目录下面,这也是可以理解的,我们在windows中也会出现这种情况,是我们已经到最开始的,目录了.

cd常见的快捷方式

我们这里只和大家分享两种快捷方式,一个是直接到家目录,另外一个是回到上次所在的目录.

cd ~

cd -

以上是关于Linux基本指令(上)的主要内容,如果未能解决你的问题,请参考以下文章

Linux常用指令

linux的基本操作

Linux基础指令--文件操作

mac的shell是啥

linux基本指令(上)

Linux --必备指令集