Linux基础之目录结构

2023-10-07  本文已影响0人  飞鹰3995

从今天开始,小编会陆续更新关于Linux一些基础操作。希望大家能从我的文章中,有自己的收获。 小编用的是macOS,部分操作和CentOS7不完全一致,针对不一致的部分,小编采用CentOS7上的截图,毕竟在小编家里,有一台陪伴我12年的笔记本电脑,活生生的被我改造成了一台CentOS7。我们知道,Windows中,可能有好几个根目录。C盘(C:)是硬盘的根目录(假如没有把C盘磁盘分区的话)

image.png

Windows电脑目录结构

image.png

Linux目录结构

Linux有且只有一个根目录,就是 / 。Linux中没有比根目录再高一阶的目录了,没有目录包含根目录。根目录就是Linux最顶层的目录:“万有之源,斜杠青年”

一、目录的结构

1、Windows下,一个目录的形式是这样的:C:\Program Files\Baidu

image.png

Baidu这个目录是Program Files这个目录的一个子目录,Program Files这个目录是C盘这个根目录的一个子目录。同时Windows中用反斜杠\来标明目录的层级与包含关系。


image.png image.png

2、Linux目录结构

Linux中用斜杠/来标明目录的层级与包含关系,Linxu的目录形式是这样的 /usr/bin。bin是usr目录的子目录,usr是/这个根目录的子目录,目录命名友情提示:Windows的目录名称可以包含空格等符号,Linux也可以。一般在Linux下命名目录时尽量不使用空格或者其他符号,尽量使用小写字母,这样会避免很多不必要的麻烦。

二、根目录的直属子目录

1、Windows的C盘这个根目录下一般会找到一些相同的子目录

image.png

2、Linux的根目录的直属子目录

我们列出一些在Linux下的根目录的常用直属子目录(有个大概印象就好,基本都是有英文含义的)小编的是macOS,属于变种的Unix,与CentOS7不完全一样,不过这影响不大。

image.png

三、Linux根目录下的直属子目录简介

1、bin

bin是英语binary的缩写,表示“二进制文件”(我们知道可执行文件是二进制的),包含了会被所有用户使用的可执行程序

2、boot

英语boot表示“启动”,包含与Linux启动密切相关的文件。

3、dev

英语device的缩写,表示“设备”,包含外设。它里面的子目录,每一个对应一个外设。比如代表我们的光盘驱动器的文件就会出现在这个目录下面。

4、etc

法语et cetera的缩写。翻译城英语就是and so on,表示“...等等”,etc目录包含系统的配置文件。至于为什么放在/etc下面存放配置文件,按照原始的Unix的说法,这下面放的是一堆零零碎碎的东西,就叫etc好了,这个是历史遗留问题。

5、home(macOS上对应的是Users)

home:英语home表示“家”。用户的私人目录。在home目录中,我们放置私人的文件,类似Windows中的Documents文件夹,也叫“我的文档”。Linux中每个用户都在home目录下有一个私人目录(除了root用户以外)。root用户拥有所有权限,比较“任性”,跟普通用户不能住在一起。假如我的用户名是lilei,那么我的私人目录就是/home/lilei(macOS上对应/Users/lilei)

6、lib

英语library的缩写,表示“库”。lib目录包含被程序所调用的库文件,例如.so结尾的文件。Windows下这样的库文件则是以.dll结尾。

7、media

英语media表示“媒体”,可移动的外设(USB盘、SD卡、DVD、光盘等)插入电脑时,Linux可以让我们通过media的子目录来访问这些外设中的内容。

8、mnt

英语mount的缩写,表示“挂载”。有点类似media目录,但一般用于临时挂载一些装置(接入U盘会用到该目录)。

9、opt

英语optional application software package的缩写。表示“可选的应用软件包”,用于安装多数第三方软件和插件。

10、root

英语“根”的意思,超级用户root的家目录。一般用户的家目录位于/home下,root用户是个例外。

11、sbin

英语system binary的缩写,表示“系统二进制文件”,比bin目录多了一个前缀system("系统")。sbin目录包含系统级的重要可执行程序

12、srv

英文service的缩写,表示“服务”。包含一些网络服务启动之后所需要取用的数据。

13、tmp

英语temporary的缩写,表示“临时的”。普通用户和程序存放临时文件的地方。

14、usr

英语Unix Software Resource的缩写。表示“Unix操作系统软件资源”(类似etc,也是历史遗留的命名)。usr目录是最庞大的目录之一,类似Windows中的C:\Windows和C:\Program Files这两个文件夹的集合。usr目录里安装了大部分用户要调用的程序。

15、var

英语variable的缩写,表示“动态的,可变的”,var通常包含程序的数据,比如log(日志)文件。log文件记录电脑中发生了什么事。更多资源查看地址:https://linuxtoy.org/archives/linux-file-structure.html

总之一句话。Linux目录结构像“一棵倒置的树”

image.png

四、pwd命令和which命令:我在哪呢?

Linux安装完成之后,包含很多文件和目录

1、pwd命令:显示当前目录的路径

新打开一个终端,在用户的家目录中(),如果用户是lilei,那么这个目录就是/home/lilei。终端会告诉你现在在哪个目录下。除了看命令行提示符,还有一个方法:pwd命令

pwd是Print Working Directory(“打印当前工作目录”)的缩写

使用方法也很简单,直接输入pwd,然后回车,就会执行此命令(mac中对应的/Users)

image.png

2、which命令:获取命令的可执行文件的位置

which命令不是一个必不可少的命令,平时用到它的机会也不多

which命令用于显示一个命令的对应可执行程序的位置

Linux下,每一条命令其实对应了一个可执行程序

在终端中输入命令,按回车的时候,就是执行了对应的那个程序

pwd命令对应的pwd程序就是存在于Linux中的

一个命令,其实只不过是一个我们随时可以调用的程序罢了

which命令接受一个参数,是你想知道其可执行程序位于哪里的那个命令

pwd命令对应的pwd程序位于/usr/bin目录中

(mac位于/bin/pwd)

Windows可执行程序以.exe结尾,Linux中一般是没有后缀名的

当然了,Linux中可执行程序也不是都位于相同目录的

总结

在Linux中,一切皆文件!这是与Windows区别很大的一点

Linux的文件和目录都是由根目录/开始自顶向下呈乔木状分散的

普通用户存放自己私人文件的地方是在/home(mac在/Users目录下)目录下

如果你的用户名是lilei,你的家目录就是/home/lilei(mac下为/Users/lilei)

pwd命令用于显示当前所在目录

which命令用于显示一个命令的对应可执行程序的位置

五、ls命令:列出文件和目录

ls命令是最常用的Linux命令之一

ls是list的缩写,是英语“列出”的意思

ls命令用于列出文件和目录

ls命令常用参数

-a:显示所有文件和目录,包括隐藏

[图片上传失败...(image-2184aa-1696755033464)]

在Linux中,以点(.)开头的文件是隐藏文件

不包括开头的两个.和..,这两个的含义如下

.(一个点)表示当前目录;..(两个点)表示上一级目录

大写的参数-A,它的作用和小写的-a几乎一样,唯一不同的是不列出.和..两个

image.png

大家还可以关注我的微信公众号,蜗牛全栈

上一篇下一篇

猜你喜欢

热点阅读