美文网首页
Linux中的文件系统

Linux中的文件系统

作者: 百工之人 | 来源:发表于2018-07-28 12:46 被阅读0次

正在看一本适合初学者的Linux入门书籍,本文集是整理出来的笔记。希望有人能喜欢。

不管是Windows系统也好,还是Linux系统也好,它们存储的文件的结构都是按照一种叫做“树”的数据结构存储的。
这棵树上挂满了文件和目录。你可以把这棵树想象成一颗被装扮好的圣诞树,只不过上面没有星星或是十字架;取而代之的是一个叫做“根目录”的目录,他是整个文件系统的顶端(当然如果你愿意,那它也是底端),下面全部都是它的崽儿。

如果你想看你自己电脑中的“文件树”,你可以打开命令行终端,键入tree就可以看到了。这个命令在Windows操作系统下同样适用。
如果你的Ubuntu没有安装这个功能,需要在网络连接的环境下键入sudo apt-get install tree安装一下就可以了。
在安装过程中你可能需要输入你的用户密码。Linux为了帮你保守住秘密,在你输入密码的时候终端不会有任何反应,不要误以为是终端没有反应,或是Linux坏掉了。这个问题在我初学Linux的时候困扰了我一周,导致我装了5天的虚拟机。

文件系统中的树
zuoshiyu@mypc:~/文档$ tree
.
├── book
│   ├── Git权威指南.pdf
│   ├── JavaScript+DOM编程艺术(中文第2版).pdf
│   └── The Linux Command Line 中文版-10150838.pdf
└── readme.md

1 directory, 4 files

有时候当你在终端中执行操作的时候需要切换目录,然而对于新手来说切换到哪里首先需要知道我在哪?(我是谁?谁在打我?)
这时候你就需要一个获取当前工作目录的命令:pwd
pwd(print working directory)

zuoshiyu@mypc:~$ pwd
/home/zuoshiyu

当我第一次登录到(打开)终端的时候,我们所在的目录是家目录,如果我是以一个普通用户的身份登录系统,我只可以在家目录下进行写入文件操作(其它地方需要充会员)。


当你知道所在的位置时,你可能想知道你的工作目录working directory下面有哪些文件或目录?
可以通过ls(list)命令进行查看。

zuosy@honor:~$ ls
book   examples.desktop  javascript  workspace  模板  图片  下载  桌面
build  extract           MyHero.png  公共的     视频  文档  音乐

如果想要得到文件的更多信息,可以使用长格式输出:ls -l

zuosy@honor:~$ ls -l
总用量 1664
drwxrwxr-x 2 zuosy zuosy    4096 7月  25 23:29 book
drwxrwxr-x 2 zuosy zuosy    4096 7月  25 19:47 build
-rw-r--r-- 1 zuosy zuosy    8980 7月  23 22:06 examples.desktop
drwxr-xr-x 4 zuosy zuosy    4096 6月  28  2016 extract
drwxrwxr-x 3 zuosy zuosy    4096 7月  25 22:48 javascript
-rw-rw-r-- 1 zuosy zuosy 1638400 7月  23 23:08 MyHero.png
drwxrwxr-x 3 zuosy zuosy    4096 7月  23 23:18 workspace
drwxr-xr-x 2 zuosy zuosy    4096 7月  24 06:13 公共的
drwxr-xr-x 2 zuosy zuosy    4096 7月  24 06:13 模板
drwxr-xr-x 2 zuosy zuosy    4096 7月  24 06:13 视频
drwxr-xr-x 2 zuosy zuosy    4096 7月  23 23:08 图片
drwxr-xr-x 2 zuosy zuosy    4096 7月  24 06:13 文档
drwxr-xr-x 2 zuosy zuosy    4096 7月  25 20:25 下载
drwxr-xr-x 3 zuosy zuosy    4096 7月  24 23:03 音乐
drwxr-xr-x 2 zuosy zuosy    4096 7月  25 23:34 桌面

ls -l命令在很多系统中,都有它的快捷键:ll。现在看ll的输出结果可能大多数人都十分困惑,不要怕,等我学会了,写成笔记,大家就全会了。


当我们学会了查看当前工作目录命令pwd以及查看目录下的文件命令ls之后嘞。我们可能想看一下当前目录下的某个文件夹中的内容有没有大姐姐什么的。那你就需要使用到一个切换目录的命令:cd

不是游戏里面技能冷却的那个CD(cool down time),而是change directory,换句话说这个命令切换了你的工作目录(你在哪儿,那儿就是你的working directory

比如说我想知道电脑里面有什么好听的音乐啊,我就用cd <dir_name>进行切换目录。看到了我电脑里仅存的两首歌,仿佛都露出了自己的年龄。。。

zuosy@honor:~$ ls
book   examples.desktop  javascript  picture    公共的  视频  文档  音乐
build  extract           MyHero.png  workspace  模板    图片  下载  桌面
zuosy@honor:~$ cd 音乐
zuosy@honor:~/音乐$ ls
CloudMusic  把悲伤留给自己.mp3  刘若英后来.flac

相对路径 & 绝对路径

可能有很多初学者看到这里会有很多的疑惑,比如说用pwd命令显示出的当前目录看起来为什么像是某个神秘链接呢?其实那并不是什么神秘链接,它实际上是目录的完整路径,专有名词叫绝对路径
在Windows系统中,它是存在多个逻辑分区的,比如说C盘、D盘、E盘等等。Windows系统中的绝对路径是以文件存储的逻辑分区开始一步一步索引的。比如说D:\\高数学习资料\\拉格朗日中值定理\\苍老师\\××××××××.avi这就是Windows系统中的绝对路径。
然而啊,我们Linux系统中没有那么多的逻辑分区,它只存在一个名为的目录,是Linux文件系统的“本源”
当你用pwd命令查看当前位置:/home/zuosy,这表明你在根目录下的home文件夹下面的zuosy文件夹中,绝对路径的第一个字符都是根目录/

看到根了吗?
比如图中的me文件夹的绝对路径为:/home/me

学过物理的学霸们都知道,相对静止与绝对运动。既然有绝对路径,那就一定存在相对路径喽。你猜对了,确实有相对路径这种表示。
不过在学习相对路径之前,需要明白以下三点,分别是:...,没错就是这三点。
你在所有的目录中,使用ls -a(list all)命令都会看到这两个文件,我还可以很不负责任的告诉你他们其实是两个目录。

  • .(一个点)代表这你当前的目录。
  • ..(两个点)代表你的父目录,即你当前目录所在的目录。
    比如当前,我现在在家目录下:
zuosy@honor:~$ pwd
/home/zuosy

我想要推到我的父目录(home)中;我可以使用绝对路径切换cd /home

zuosy@honor:~$ pwd
/home/zuosy
zuosy@honor:~$ cd /home/
zuosy@honor:/home$ pwd
/home

同样,我也可以使用相对路径进行切换cd ..

zuosy@honor:~$ pwd
/home/zuosy
zuosy@honor:~$ cd ..
zuosy@honor:/home$ pwd
/home

再举一个例子:
我先切换到usr目录下cd /usr
然后查看一下该目录下有哪些文件(和目录)ls
又然后我随机切换到一个目录下cd lib
又又然后我想要去usr目录下的bin目录,我可以cd ../bin/
最后我就顺利地到达了我想要去的地方

zuosy@honor:~$ cd /usr/
zuosy@honor:/usr$ ls
bin  games  include  lib  local  locale  sbin  share  src
zuosy@honor:/usr$ cd lib/   <-----这里的'/'有没有都无所谓
zuosy@honor:/usr/lib$ pwd
/usr/lib
zuosy@honor:/usr/lib$ cd ../bin/
zuosy@honor:/usr/bin$ pwd
/usr/bin

补充

我们使用ls -a命令时,可能会看到许多以'.'开头的文件(夹)。这代表这它是一个隐藏文件(夹)。还有Linux中没文件扩展名(后缀名);使用扩展名只是为了方便用户区分他们。如:.cpp.conf.txt.avi你一下就能分辨出他们是什么文件。


小结

那啥 还有那啥
pwd print working directory
cd change directory
ls list
  • 相对路径
  • 绝对路径

相关文章

  • Linux 文件系统与设备文件

    1 Linux 文件系统 1.1 Linux 文件系统与设备驱动关系 下图表明了 Linux 中虚拟文件系统、磁盘...

  • Linux ext3是什么?有什么作用?

    Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且文件系统的结构,所有Linux用户和程序...

  • linux文件系统格式

    Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且文件系统的结构,所有Linux用户和程序...

  • Linux基础知识

    Linux文件系统 Linux文件系统简介 在Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘...

  • 第8章 管理文件系统(不是很懂的一章)

    8.1 探索Linux文件系统 8.1.1 基本的Linux文件系统 ext文件系统扩展文件系统(extended...

  • 软链接vs硬链接

    记录对软链接硬链接的探索。 linux文件系统基础 linux中每个分区包含一个文件系统。一个完整的文件系统包含自...

  • 02-Linux入门基础:Linux文件系统基本结构

    1.2.1 Linux文件系统结构 Linux系统为一个倒转的单根树状结构 文件系统的根为/ Linux文件系统严...

  • linux文件系统

    linux文件系统 文件系统的是用来组织和排列文件存取的,所以她是可见的,在Linux中,我们可以通过ls等工具来...

  • Linux运维之道(14)——Linux文件系统管理

    @(Linux)[文件系统管理] 1. 文件系统 1.1 各个操作系统上的文件系统 Linux文件系统 ext2 ...

  • MySQL-存储引擎

    1、简介 类型Linux中的文件系统,比文件系统要高级 2、mysql中的存储引擎类型 InnoDB(5.5以后的...

网友评论

      本文标题:Linux中的文件系统

      本文链接:https://www.haomeiwen.com/subject/fngrmftx.html