一、目录层次

1、/(根目录)

Linux目录,查看查找文件_文件类型

一级目录

功能








/bin

存放系统命令,普通用户和root都能使用








/boot

存放系统启动文件








/dev

存放设备文件








/etc

存放配置文件








/home

普通用户家目录








/lib

系统调用的函数库保存位置








/media

挂载目录,可移动设备








/mnt

默认挂载目录








/opt

第三方软件安装保存位置








/proc

保存系统内核,进程,外部设备状态,网络状态








/root

超级用户的家目录








/run

系统正在运行的文件








/sbin

只有root可以使用的系统命令








/var


存储动态数据,例如缓存、日志文件、软件运行过程中产生的文件等。








/usr

全称为 Unix Software Resource,所有系统默认的软件都存储在 /usr 目录下








2、文件类型

  • d 目录文件directory
  • b 块设备文件block 块设备文件,就是保存大块数据的设备,比如最常见的硬盘。
  • c 字符设备character 这些文件通常隐藏在 /dev/ 目录下,当进行设备读取或外设交互时才会被使用; 一个字符一个字符读取 /dev/zero (/dev/null)
  • l 符号链接文件link
  • p 管道文件pipe 主要用于进程间通信单向传输, 一个只读、另一个只写 ,其主要作用是解决多个程序同时存取一个文件所造成的错误。
  • s 套接字文件socket 套接字文件一般隐藏在 /var/run/ 目录下,用于进程间的网络通信。(可以双向)
  • -普通文件 普通文件,包括纯文本文件、二进制文件、各种压缩文件等

二、文件查看

1、cat

作用:查看文件内容,一次显示整个文件内容

语法:cat   [选项]   文件名...

-n 显示文件行号

Linux目录,查看查找文件_文件名_02

-A 显示隐藏字符

Linux目录,查看查找文件_文件类型_03

-b 跳过空行不编号

tac 从最后向前显示

Linux目录,查看查找文件_文件名_04

:cat特殊用法,合并文件

Linux目录,查看查找文件_文件类型_05

2、more

作用:以分页的形式显示文件内容

语法:more  +   文件名

注:按回车翻一行,按空格翻一页,输入q退出,more不支持后退,文件看完自动退出

3、less

作用:以分页形式显示文件内容

语法:less + 文件名

注:支持前后翻滚,pageup(向上翻页),pagedown(向下翻页),回车键向下翻一行,空格向下翻一页,上下方向键可以上下翻一行,文件看完不会自动退出,按q键退出

4、head

作用:显示文件开头的内容,默认显示前10行

语法:head  [选项]  文件名

-n 查看文件开始头n的行数

Linux目录,查看查找文件_显示文件_06

5、tail

作用:显示文件尾部的内容,默认显示文件末尾10行

语法:tail  [选项]  文件名

选项

-f 动态显示数据,常用来查看日志

-n 显示文件尾部n行的内容

Linux目录,查看查找文件_文件名_07

-f 动态显示数据,常用来查看日志

Linux目录,查看查找文件_显示文件_08

:查看/etc/passwd文件的第3行和倒数第7行

Linux目录,查看查找文件_显示文件_09

Linux目录,查看查找文件_文件名_10

查看第三行:head -n 3 /etc/passwd | tail -n +3

Linux目录,查看查找文件_文件类型_11

查看倒数第7行:tail -n 7 /etc/passwd | head -n -6

Linux目录,查看查找文件_显示文件_12

三、文件查找

1、which,whereis

作用:which:查看可执行命令的位置

          whereis:查看可执行命令的位置及相关文件

Linux目录,查看查找文件_文件名_13

注:只能用来查命令

2、locate

作用:配合数据库缓存,快速查看文件位置

locate和find -name命令作用差不多,但是要比find快的多,因为find查找具体目录文件,而locate搜索数据库/var/lib/mlocate/mlocate.db,这个数据库存有本地所有的文件信息,是Linux自动创建并且每天自动更新。相关信息在/etc/updatedb.conf,查看定时任务信息在/etc/cron.daily/mlocate

注:locate是模糊查询,并且刚创建的文件查找不到,需要updatedb,手动更新数据库后才能查找。

3、grep

作用:过滤,可以使用正则表达式搜索文本,并把结果打印出来

语法:grep [选项]...PATTERN [file]...

pattern正则表达式

. 单个任意字符

^$ 空行

^# 以#开头

#$  以#结尾

选项

-i 忽略大小写

-n 显示行号

-r 递归过滤目录中的所有文件

-o 只过滤你想要的

-w 只匹配完整的单词

-c 显示找到具体的行数

-A(after)显示包含要找信息所在行的后面n行

-B(before)显示包含要找信息所在行的前面n行

-C(context)显示包含要找信息所在行的前后n行

-v 取反

Linux目录,查看查找文件_文件名_14

-i 忽略大小写

Linux目录,查看查找文件_显示文件_15

-n 显示行号

Linux目录,查看查找文件_文件类型_16

-r 递归过滤目录中的所有文件

Linux目录,查看查找文件_文件类型_17

-o 只过滤你要的

Linux目录,查看查找文件_显示文件_18

:如何在一个拥有大量文件的文件夹中过滤出你想要的信息?在/data中

找出root

Linux目录,查看查找文件_文件名_19

:找出/etc/passwd中包含root和sbin的行

Linux目录,查看查找文件_文件名_20

-w 只匹配完整的单词

Linux目录,查看查找文件_文件名_21

-c 显示找到具体的行数

Linux目录,查看查找文件_文件名_22

-A(after)显示包含要找信息所在行的后面n行

Linux目录,查看查找文件_文件名_23

-B(before)显示包含要找信息所在行的前面n行

Linux目录,查看查找文件_显示文件_24

-C(context)显示包含要找信息所在行的前后n行

Linux目录,查看查找文件_文件名_25


4、find

作用:查找文件

语法:find  [查找范围]  [查找条件]  [print]

find是实时精确查找,默认递归查找,在全部硬盘查找

-name按文件名查找

-size按文件大小查找

-user按文件属主查找

-group按属组查找

-type按文件类型查找

-inum按文件inode号查找

-maxdepth level  -mindepth level按目录层级查找

-mtime -n / +n 按文件更改时间查找

    -n 文件更改时间距现在n天以内

    +n 文件更改时间距现在n天之前

-exec 对匹配出的参数执行其他Linux命令,命令格式:  命令  {} \;   注:{}代表前面查找到的内容。

找到当前文件夹以.bsck结尾的文件并以长格式显示

Linux目录,查看查找文件_文件类型_26

-name按文件名查找

找到当前文件夹下以.txt结尾的文件

Linux目录,查看查找文件_文件类型_27

-size按文件大小查找

查找root目录下大于1M的文件

Linux目录,查看查找文件_文件类型_28

-user按文件的属主查找

查找/目录下属主为zhangsan的文件

Linux目录,查看查找文件_文件类型_29

-type按文件类型查找

查找/dev目录下文件类型为b的文件

Linux目录,查看查找文件_文件类型_30

-inum按inode号查找

查找inode号为68849366的文件

Linux目录,查看查找文件_文件名_31

-mtime按文件更改时间查找

查找/etc下一天内更改过的文件

Linux目录,查看查找文件_显示文件_32

-maxdepth level  -mindepth level按目录层级查找

查找/opt下第二层文件

Linux目录,查看查找文件_文件类型_33

-group按属组查找

查找/opt目录下属组为root的文件

Linux目录,查看查找文件_文件名_34

5、wc

作用:统计文件中的信息

-l 显示文件行数

Linux目录,查看查找文件_文件名_35

-w 单词数

-c 字节数(空格,tab,回车都占字节)

Linux目录,查看查找文件_文件类型_36