目录与文件操作
一、Linux目录结构
FHS(Filesystem Hierarchy Standard,目录层次标准)定义了两层规范:第一层是“/”目录下的各个目录应该放什么数据文件,例如:/etc目录下放置系统的配置文件,而/bin和/sbin放置程序及系统命令,第二层是针对/usr和/var这两个目录的子目录来定义,例如/var/log下放置系统日志文件等。
以CentOS系统为例介绍讲解Linux的目录结构,CentOS系统中的目录和文件数据被组织为一个树形目录结构,所有的分区、目录、文件等都具有一个相同的位置起点–根目录。在根目录下,CentOS系统将默认建立一些特殊的子目录,分别具有不同的用途。
常见的子目录及其作用:
/boot:系统内核存放的目录,同时也是系统启动时所需文件的存放目录。
/bin:存放了所有用户都可以执行的且经常使用的命令,如ls、cd等。
/dev:此目录保存了接口设备文件,如/dev/hdal、/dev/cdrom等。
/etc:保存有关系统设置与管理的文件。
/home:存放所有普通系统用户的默认工作文件夹(即宿主目录、家目录)。
/root:系统管理员(超级用户)root的宿主目录。
/sbin:存放系统中最基本的管理命令,一般管理员用户才有权限执行。
/usr:存放其他的用户应用程序。
/var:存放系统中经常需要变化的一些文件,如系统日志、用户邮箱目录等。
二、查看及检索文件
在Linux系统中,绝大多数的配置文件都是以普通文本格式保存的,这些配置文件配置文件决定着系统及相关服务、程序的运行特性。下面将介绍如何查看及检索文本文件的内容,从而快速了解相关配置信息,便于管理、维护系统。
1、查看文件内容
1)cat命令–显示并连接(concatenate)文件的内容
cat命令的基本使用格式为: cat [选项] 文件名
使用cat命令时,只需要把要查看的文件路径作为参数即可。例如:下面操作将查看网卡的配置文件中的内容,并了解其配置信息。
如果需要同时查看多个文件内容,可以添加多个文件路径作为查看对象。例如:以下操作将依此显示/opt/目录下test、test2的文件内容。
2)more和less命令–分页查看文件内容
cat命令可以简单直接地显示出整个文件的内容,但是当文件中的内容较多时,只能看到最后一部分信息,而前面的大部分内容来不及看到。这时就需要用到more和less命令通过采用全屏的方式分页显示文件,便于浏览阅读整个文件的内容。more和less命令用法基本相同。less命令出现比more较晚,因此less命令提供了比more命令更多的一些拓展功能。
①more命令
使用more命令查看超过一屏的文件内容时,将进行分屏显示,并在左下角显示当前内容在整个文件中的百分占比。在阅读界面中,可以按Enter键向下逐行滚动查看,按空格键可以向下翻一屏,按b键向上翻一屏,按q键退出并返回原来的命令环境。
②less命令
less命令与more命令用法基本相同,less命令的基本使用格式为:less [选项] 文件名
与more命令不同的是,查看超过一屏的文件内容时,虽然也进行分页显示,但是左下角不显示当前内容在整个文件中的百分占比,而是显示被查看的文件名。在阅读界面中,按page up、page down可以进行上下翻页,按“/”键查找内容,“n”显示下一个内容,“N"显示上以上一个内容,其他功能基本相似。
3)head和tail命令–开头或末尾的部分内容
head和tail是作用相反的两个命令,head用于显示文件开头的一部分内容,tail用于显示文件末尾的一部分内容。head和tail命令可以结合”-n”选项(n为具体的行数)指定需要显示多少行的内容,若不指定行数,默认只显示十行。下面分别用head和tail命令查看/etc/sysconfig/network-scripts/ifcfg-e