Linux:目录目录、文件管理

发布于:2024-04-23 ⋅ 阅读:(16) ⋅ 点赞:(0)

Linux:目录、文件管理

文件系统

Linux 系统中的所有文件存储在文件系统中,它们被组织到一个颠倒的目录树中,称为文件系统层次结构。这棵树是颠倒的,因为树根在该层次结构的顶部,树根的下方延伸出目录和子目录的分支。

Linux遵循开源协议,所以任何人都可以根据Linux的核心代码制作和发行版本。如
果每个人都按自己的喜好,在/目录下创建目录、存放文件,将导致其他人无法快速
使用他人的linux系统。

为避免这样的情况,FHS就应运而生,对linux文件系统目录结构进行规范化。

在这里插入图片描述

“/”目录是根目录,位于文件系统层次结构的顶部。“/”字符还用作文件名中的目录分隔符

/的子目录用于标准化的用途,以便根据文件和用途组织文件。这可以方便查找文件。

FHS

FHS(Filesystem Hierarchy Standard)采用树形结构组织文件,定义了系统中每个区域的用途、所需要的最小构成的文件和目录,同时还给出了例外处理与矛盾处理。
FHS定义了两层规范:

  • 定义了 / 下面的各个目录应该要放什么文件数据。例如/etc应该要放置设置文件,/bin与/sbin则应该要放置可执行文件等等。

  • 针对/usr及/var这两个目录的子目录来定义。例如/var/log放置系统登录文件、/usr/share放置共享数据等等。

Linux 重要目录

位置 用途
/usr 系统安装的软件、共享的库。重要的子目录有:1./usr/bin: 用户命令。2./usr/sbin: 系统管理命令。3./usr/local: 本地自定义软件。
/etc 系统配置文件。
/var 系统可变数据,在系统启动之间保持永久性,如数据库、 缓存目录、日志文件、打印机后台处理文档和网站内容。
/run 自本次系统启动以来运行中的进程的运行数据,包括进程ID文件和锁定文件,等等。此目录中的内容在重启时重新创建此目录合并了早期版本的RHEL中的/var/run和/var/lock。
/home 主目录是普通用户存储其个人数据和配置文件的位置。
/root 管理员root的主目录。
/tmp 供临时文件使用的全局可写空间。 10天内未访问、未更改或未修改的文件将自动从该目录中删除。还有一个临时目录/var/tmp,该目录中的文件如果在30天内未曾访问、更改或修改过, 将被自动删除。
/boot 开机启动过程所需的文件。
/dev 包含特殊的设备文件,供系统用于访问硬件。

文件名规范

在标准的linux文件系统中,一个文件的名称:

  • 包括/字符在内的所有字符长度,不能超过4095 bytes。

  • 两个/之间的字符数不能超过255 bytes,一个字符占用一个字节大小。

  • 文件名称可以使用UTF-8中任意字符和ASCII中单个字节的字符,但不能包含/和NUL字符。

  • 标准的linux文件系统包括但不限于ext4 XFS文件系统。

  • Linux也支持一些非linux文件系统的其他文件系统,例如VFAT,NTFS。

  • Linux文件系统文件名称是区分大小写。VFAT和NTFS不区分大小写。

常用命令

查看文件内容

  • cat
car [选项] <文件>        ##命令格式

cat -n <文件>            ##对所有输出的行数编号

cat -b <文件>            ##对于空白行不编号

cat -s <文件>            ##将所有的连续的多个空行替换为一个空行
  • more
more [选项] <文件>        ##命令格式

more +n <文件>        ##从笫n行开始显示

more -n <文件>        ##定义一页(一次)大小为n行

more -p <文件>        ##通过清除窗口而不是滚屏来对文件进行换页

回车、空格往下翻,b/q上下翻页,到底就退出;配合管道符号时不能向上翻页

可与“cat"组合——cat <文件> | more [选项]

  • less
less [选项] <文件>        ##命令格式

less -e <文件>            ##当文件显示结束后,自动离开

上下方向键、pageup/pagedn翻页;“ / ”可查找内容,n查看下一个内容,N查看上一个内容

可与“cat"组合——cat <文件> | less [选项]

  • head
head [选项] <文件>        ##命令格式

head -n N/-N <文件>            ##查看文件前N行的内容/除了N行后的所有内容

可与“cat"组合——cat <文件> | head [选项]

  • tail
tail [选项] <文件>        ##命令格式

tail -n N/-N <文件>            ##查看文件后N行的内容/除了N行前的所有内容

可与“cat"组合——cat <文件> | tail [选项]

统计和检索文件内容

  • wc
wc [选项] <文件>        ##命令格式

wc -l <文件>            ##统计行数

wc -w <文件>            ##统计字数,一个字被定义为由空白、跳格或换行字符分隔的字符串

wc -c <文件>        ##统计字节数
>可与“cat"组合——cat <文件> | wc [选项]
  • grep
grep [选项] <文件>        ##命令格式

grep -A n <文件>         ##即#显示匹配行和它下面的n行;

grep -B n <文件>        ##即#显示匹配行和它上面的n行;

grep -C n <文件>        ##即#匹配行和它前后各n行;

可与“cat"组合——cat <文件> | grep [选项]

压缩

tar

归档和压缩文件对于创建备份和通过网络传输数据非常有用。

用于创建和使用备份存档的最古老和最常用的命令之一是tar命令。

使用tar,可以将大量文件集合到一个文件(存档)中。

tar存档是一个结构化的文件数据序列,包含有关每个文件和索引的元数据。

可以提取单个文件,也可以使用gzip,bzip2或xz压缩来压缩存档。

tar命令支持三种压缩方法:

  • gzip:-z, --gzip 文件名通常以.tar.gz结尾。最快,最老,使用最广泛。

  • bzip2:-j, --bzip2 文件名通常以.tar.bz2结尾。压缩后比gzip小,没gzip使用广泛。

  • xz:-J, --xz 文件名通常以.tar.xz结尾。比较新,更好的压缩比。

压缩的效果取决于被压缩的对象,例如已经压缩的图片或者rpm包,压缩效果不明显。

tar命令

tar [选项] <参数> <源路径>

选项 描述
操作选项 -c –create 创建一个新存储
操作选项 -t –list 列出存档的目录
操作选项 -x –extract 从现有存档提取
一般选项 -v –verbose 详细信息
一般选项 -f –file 文件名
一般选项 -p –preserve-permissions 在提取存档时保留文件和目录的权限,而不去除umask

编辑文件

linux中编辑器选择

linux中一个重要的设计原则,大部分信息存储在基于文本的文件中,包括无格式的文本文件(例如/etc/中的配置文件)和有格式的文本文件(如XML YAML等)。文本文件的优点:可以在系统之间共享,无需转换,而且可以通过简单的文本编辑器进行查看和编辑。

每一个系统管理员都有一个偏爱的文本编辑器。有的管理员偏爱gedit,有的偏爱nano,甚至有的偏爱emacs。即使已经有偏爱的编辑器,了解vim还是有必要的。因为vim可以安装在任何系统。

vi编辑器

在这里插入图片描述

切换模式