0
点赞
收藏
分享

微信扫一扫

Linux目录和文件管理详解

萨科潘 2022-02-15 阅读 102
linux运维

目录

一、Linux目录层次

1.1 Linux根目录 

1.2 文件系统的目录结构特点

二、查看文件内容

2.1 七类常见的Linux的文件

2.2 显示命令

2.2.1 cat

2.2.2 more

​2.2.3 less

2.2.4 head/tail

2.2.5 wc

2.2.6 grep 

三、压缩,解压缩

3.1 gzip bzip2

3.2 归档tar 文件夹

四、总结



一、Linux目录层次

  • 根(/) 相当于一个入口,文件的总入口,也是唯一入口
  • bin(sbin) 二进制文件,可执行文件,也可能存在别处,默认使用较多所有用户软链接文件
  • sbin 管理员可使用的二进制文件
  • boot 系统内核、启动文件
  • dev 硬件文件(黄色)
  • etc 配置文件等同于windows注册表,一般是文本文件
  • run 运行的内存中文件
  • tmp 临时文件
  • usr 应用程序和操作系统相关的文件
  • var 日志文件,数据变化的
  • home 普通用户的家目录的上机目录,例如zhangsan用户在home下会有个文件夹
  • root 系统管理员的目录
  • lib 动态库文件,类似于windows的dll文件
  • proc 存放放映系统信息的文件
  • media 可移动设备
  • mnt 默认挂载点
  • opt 第三方应用程序安装所在目录

1.1 Linux根目录 

  • 所有分区、目录、文件等的位置起点
  • 整个树形目录结构中,使用独立一个“/”表示


1.2 文件系统的目录结构特点

  • 以 . 开头的文件均为隐藏文件

  • 路径用/分开

  • 文件名最长255个字符

  • 区分大小写


二、查看文件内容


2.1 七类常见的Linux的文件

“d”代表目录/文件夹
“-” 代表普通文件  
“l”代表链接文件
“b”代表块文件
“c”代表字节文件
“p”代表管道文件
“s”代表套接字文件


2.2 显示命令


2.2.1 cat

cat:在终端设备上显示文件内容,用于查看内容较少的纯文本文件

语法格式:cat [参数] [文件] ......

常用参数:

-n显示行数(空行也编号)
-s显示行数(多个空行算一个编号)
-b显示行数(空行不编号)
-E每行结束处显示$符号
-T将TAB字符显示为 ^I符号
-v使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
-e等价于”-vE”组合
-t等价于”-vT”组合
-A等价于 -vET组合
--help显示帮助信息
--version显示版本信息

示例:

1.使用cat查看文件内容

2.使用tac反向查看文件内容,行号倒过来

 

注:生产环境中只能看到该页面支持查看的内容,看不了更多内容所以只适合查看内容较少的文件

 
2.2.2 more

more命令用于将内容较长的文本文件内容(不能在一屏显示完)进行分屏显示,并且支持在显示时定位关键字。

缺点:到最后一行会自动退出

语法格式:more [参数] [文件]

常用参数:

-num指定每屏显示的行数
-lmore在通常情况下把 ^L 当作特殊字符, 遇到这个字符就会暂停,-l选项可以阻止这种特性
-f 计算实际的行数,而非自动换行的行数
-p先清除屏幕再显示文本文件的剩余内容
-c与-p相似,不滚屏,先显示内容再清除旧内容
-s多个空行压缩成一行显示
-u禁止下划线
+/pattern在每个文档显示前搜寻该字(pattern),然后从该字串之后开始显示
+num 从第 num 行开始显示

示例:

[root@localhost data]# more /etc/wgetrc

左下角会有提示页面显示了多少内容,使用空格键翻页,回车键下一行 ,按q键退出


2.2.3 less

less 分页显示工具

用less命令显示文件时,PageUp键向上翻页,PageDown键向下翻页,要退出less程序,应按q键。

less的作用与more十分相似,不同点为less命令允许用户向前或向后浏览文件,而more命令只能向前浏览 。

语法格式:less [参数] [文件]

常用参数:

-b置缓冲区的大小
-e当文件显示结束后,自动离开
-f强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g只标志最后搜索的关键词
-i忽略搜索时的大小写
-m显示类似more命令的百分比
-N显示每行的行号
-o将less 输出的内容在指定文件中保存起来
-Q不使用警告音
-s显示连续空行为一行
-S在单行显示较长的内容,而不换行显示
-x将TAB字符显示为指定个数的空格字符

示例:

1.按/可以查找内容

 

 2.可以结合管道符“|”,把前一条命令的结果作为参数传给less显示

2.2.4 head/tail

head命令以行为单位,取文件的内容,后面不接参数时默认打印前10行。

语法格式:head [参数] [文件]

常用参数:

-n后面接数字,代表显示几行的意思
-c指定显示头部内容的字符数
-v总是显示文件名的头信息
-q不显示文件名的头信息

tail用于显示文件尾部的内容,默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。

语法格式:tail [参数]

-n想要显示的行数
-f实时查看

示例:

1.head默认查看前十行

 2.查看最后五行

 3.一直变化的文件总是显示后10行

将ping的结果写入5.txt文件

去另一个终端用-f参数可以实时查看 ,会一直变化

 
2.2.5 wc

wc命令统计指定文件中的字节数、字数、行数,并将统计结果显示输出。

语法格式:wc [参数] [文件]

常用参数:

-w统计字数,或--words:只显示字数。一个字被定义为由空白、跳格或换行字符分隔的字符串
-c统计字节数,或--bytes或--chars:只显示Bytes数
-l统计行数,或--lines:只显示列数

示例:

1.将“1 2 3 ww”写入10.txt文件,wc不加参数默认显示的顺序是行数、单词个数和字节数

9个字节解释一下是因为有一个隐藏的回车符

2.2.6 grep 

grep是文本搜索工具

grep是“global search regular expression and print out the line”的简称,意思是全面搜索正则表达式,并将其打印出来。这个命令可以结合正则表达式使用

语法格式: grep [参数] 查找条件 目标文件

常用参数:

^表示以...开头,$表示以...结尾,^$表示空行

-i搜索时,忽略大小写
-c只输出匹配行的数量
-v显示不包含匹配文本的所有行(反向查找)
-f比较两个文件中相同的部分
-n列出所有的匹配行,显示行号
-h查询多文件时不显示文件名
-s不显示不存在、没有匹配文本的错误信息
-v显示不包含匹配文本的所有行
-w匹配整词
-x匹配整行
-r递归搜索
-o

只显示匹配项

^$表示空行

示例:

1.查找passwd中包含root字符串的行

 2.比较两个文件中相同的部分

3.使用管道符,只查找192.168.112.130的这行

法一:

 法二:

 法三:

 4.过滤出所有以bash结尾的行


三、压缩,解压缩


3.1 gzip bzip2

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。

语法格式:gzip [参数]

常用参数:

-a使用ASCII文字模式
-d解开压缩文件
-f强行压缩文件
-l列出压缩文件的相关信息
-c把压缩后的文件输出到标准输出设备,不去更动原始文件
-r递归处理,将指定目录下的所有文件及子目录一并处理
-q不显示警告信息

制作压缩文件、解压缩文件(不能用于文件夹)
gzip [-9] 文件名
bzip2 [-9] 文件名
gzip -d .gz格式的压缩文件
bzip2 -d .bz2格式的压缩文件

常用命令选项:
-9 压缩等级,指令的值可为1(压缩速度最快,压缩质量最低)至9(压缩速度最慢,压缩质量最高)
-d 用于解压缩已经压缩过的文件,相当于使用gunzip、bunzip2命令
-k(只对bzip2有效) 保留原文件

bzip2命令采用新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好。若没有加上任何参数,bzip2压缩完文件后会产生.bz2的压缩文件,并删除原始的文件。 bzip2命令系统默认是没有安装的,需要安装bzip2库才可以使用此命令。

语法格式:bzip2 [参数] 文件系统

常用参数:

-c将压缩与解压缩的结果送到标准输出
-d执行解压缩
-fbzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,请使用此参数
-kbzip2在压缩或解压缩后,会删除原始的文件。若要保留原始文件,请使用此参数
-s降低程序执行时内存的使用量
-t测试.bz2压缩文件的完整性
-v压缩或解压缩文件时,显示详细的信息
-z强制执行压缩

示例:
1.gzip -9 1.txt 压缩后原文件消失


2.bzip2 -9 2.txt


3.gzip -d 1.txt.gz


4.bzip2 -d 2.txt.bz2 

 


3.2 归档tar 文件夹

tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。

tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。

语法格式:

tar [选项] 归档文件名 原文件或目录
tar [选项] 归档文件名 [-c 目标目录]

常用参数:
-c 创建.tar格式的包文件,一般都带
-x 解开.tar格式的包文件
-C 解压时指定释放的目标文件夹
-f 表示使用归档文件,使用tar一定要加
-p 打包时保留文件及目录的权限
-P 打包时保留文件及目录的绝对路径
-t 不解压的情况下,列表查看包内的文件
-v 输出详细信息,制作tar包或解开tar包的时候显示过程
-j 调用bzip2程序进行压缩或解压
-z 调用gzip程序进行压缩或解压
示例:“f” 要放最后
1.tar -zcvf jishiben.tar.gz 1.txt 2.txt 保留原文件


2.tar -zxvf jishiben.tar.gz  默认当前目录


3.tar -zxvf jishiben.tar.gz -C /mnt

 

 

四、总结

 gzip bzip2用的比较少,一般用tar

显示命令less用的比较多,其他用的比较少

举报

相关推荐

0 条评论