02 目录和文件管理

1、Linux目录结构

在Linux操作系统中的目录和文件数据被组织为一个树形目录结构

注:Linux操作系统中只有一个根目录,而Windows操作系统中每个分区都有一个根目录

Linux系统中使用斜杠/进行分隔,而windows系统中使用反斜杠\分隔。

整个树形目录中使用一个/表示根目录,根目录是Linux操作系统的起点,其所在的分区称为根分区。

在根目录下,Linux操作系统将默认建立一些特殊的子目录,分别具有不同的用途:

  • /boot ——是存放系统内核的目录,也是系统启动所需文件的存放目录
  • /sbin ——存放Linux操作系统中最基本的管理命令,一般管理员用户才有权限执行

    注:/bin和/sbin这两个目录下所放置的文件都是命令,/bin这个文件里面放置的文件一般是给普通用户用的。/sbin里面的文件给超级用户root用的,对于超级用户来说,这两个目录里面的命令都有权使用,而普通用户只能使用/bin目录下的命令。

  • /dev ——此目录保存了与本主机硬件设备相关的文件,如/dev/hda1、/dev/cdrom等
  • /etc ——系统主要的配置文件几乎都放置到这个目录内,如人员的账号密码文件、各种服务的起始文件等

    注:通常可以在/etc目录下放置你的程序的配置文件(也包括系统的用户文件、密码文件等)

  • /home——存放所有普通系统用户的默认工作文件夹,如用户账户teacher对应的宿主目录位于/home/teacher/

   注:/home又称家目录,放置普通用户的家目录,在默认情况下,我们创建用户会在该目录下生产该用户的一个子目录。

  • /lib——放置的是Linux的运行库(函数库)
  • /root ——默认情况下,只有root用户的宿主目录在根目录下而不是/home目录下
  • /opt——经常在这里面放置一些软件和软件包(第三方软件包放置的位置)
  • /usr ——存放其他的用户应用程序,通常被划分成很多子目录,用于存放不同类型的应用程序
  • /usr/local——当我们安装程序的时候,此目录通常会作为程序的安装位置
  • /var ——存放系统中经常需要变化的一些文件,如系统日志文件、用户邮箱目录等
  • /var/log——存放系统的日志文件或程序的日志文件
  • /tmp——用于存放临时性的文件(很多文件是可以删掉的)

注:绿色文件在Linux中代表带有执行权限的一种文件(这种文件大多都是一种命令)

2、在Linux中查看及检索文件

在Linux操作系统中,绝大多数的配置文件是以普通文本格式保存的,这些配置文件决定着系统及相关服务、程序的运行特性。

2.1    cat命令——显示并连接文件的内容

对于一个文本格式的配置文件,可用不同的查看方式来获知文件内容,如直接显示整个文件内容、分页查看文件内容、或者只查看文件开头或末尾的部分内容等。

注:cat命令是应用最为广泛的文件内容查看命令,在使用该命令时,只需要把要查看的文件路径作为参数即可

如:cat /etc/sysconfig/network-scripts/ifcfg-ens33 可以查看第一块以太网的配置信息

若需要同时查看多个文件的内容,可以添加多个文件路径作为查看对象。

如下图,将依次显示/etc/redhat-release(记录了CentOS系统的发行版本信息)、/proc/version(记录了系统内核及开发环境、时间等信息)文件的内容

2.2、more和less命令——分页查看文件内容

注:使用cat命令可以非常简单地直接显示整个文件的内容,但当文件中的内容较多时,很可能只能看到最后一部分信息,文件前面的大部分内容都来不及看到。而more和less命令通过采用全屏的方式分页显示文件,便于我们从头到尾的仔细阅读文件内容。

使用more命令查看超过一屏的文件内容时,将进行分屏显示,并在左下角显示当前内容在整个文件中的百分比。

(在阅读界面,可以按Enter键向下翻一行查看,空格向下一屏,按Space键可以向下翻一屏,按b键向上翻一屏,按q键退出并返回原来的命令环境)

在more命令中是不能用pageup(向上一页)、pagedown(向下一页)翻页的。

如下图中可以分屏查看/etc/http/conf/httpd.conf(网站配置文件)的内容

另外,more命令除了可以分屏查看文件内容以外,还可以结合管道符号|分屏查看执行命令时的输出信息

如下图中可以分页查看/etc/目录下扩展名为.conf的配置文件

less命令的使用方法与more命令基本类似,快捷键与more中的快捷键一样(但在less命令中pageup、pagedown都能正常发挥作用)因此,less的功能更丰富一些

3、head和tail命令——查看文件开头或末尾的部分内容

3.1 head——用于显示文件开头的一部分内容

可以使用-n选项来指定需要显示的多少行的内容(若不指定行数,默认只显示前10行)

如下图,执行命令后,可以查看用户账号文件/etc/passwd开头第一行至第四行的内容

3.2 tail——用于查看文件末尾的内容(默认只显示后10行)

tail命令通常用于查看系统日志(因为较新的日志记录总是添加到文件最后),以便观察网络访问、服务调试等相关信息。

注:tail配合-f选项使用时,可以动态显示文件末尾的变化,便于实时监控文件内容的变化。

如,下图中的命令就可以查看系统公共日志文件/var/log/messages的最后十行内容,并在末尾跟踪该文件中新纪录的内容。(Ctrl+C——退出会话界面)

4、统计和检索文件内容

4.1 wc命令——统计文件内容中的单词数量、行数等信息

wc命令用于统计文件内容中包含的行数、单词数、字节数等信息,使用文件名作为参数,可以同时统计多个文件。常用的选项有:

  • -l                 统计文件内容中的行数
  • -w               统计文件内容中的单词个数(以空格或制表位作为分隔)
  • -c                统计文件内容中的字节数

注:在wc命令后面加上一个文件名之后,回车一下,会针对这个文件出现三个数字,

第一个数字代表文件的行数,第二个数字代表文件中的单词个数,第三个数字代表文件内容中总共有多少个字节

4.2 grep命令——检索、过滤文件内容

grep命令用于在文件中查找并显示包含指定字符串的行(可以直接指定关键字符串作为查找条件),grep命令的基本格式为:grep        [选项]         查找条件         目标文件

注:在Linux的显示中,以#开头的都是注释,

grep命令的常用选项包括:

-i                         查找内容时忽略大小写

-v                         反转查找(Invert),即输出与查找条件不相符的行

如下图中,执行命令后会输出在帐号文件/etc/passwd下的名为ftp的用户账号的信息

注:使用grep命令可以过滤掉许多空行和以#开头的注释文字

如下图中的命令执行后,可以显示/etc/yum.conf文件中以#开头的行和空行以外的内容

5、备份与恢复文档

归档:实际上相当于“打包”,即将多个文件和目录合并保存为一个整体的包文件,以方便传递和携带。

注:压缩操作可以进一步降低打包后的归档文件所占用的磁盘空间,充分提高备份介质的利用率。

5.1 使用压缩和解压缩工具

gzip和bzip是Linux操作系统中使用最多的两个压缩工具,这两个命令都可以压缩指定的文件,或者将已压缩过的文件进行解压。一般来说,bzip2的压缩效率要好一些

  (1) 使用gzip压缩工具

注:使用gzip制作的压缩文件默认的扩展名为.gz,

下图中的命令是对/root/public-html目录下的mkfile文件进行压缩,生产压缩文件mkfile.gz(而原始文件mkfile不再保留),压缩后的文件大小变为30KB(未压缩时是62KB)

当需要解压缩经gzip压缩的文件时,只需要使用带-d选项的gzip命令即可,或者直接使用gunzip命令

如,将压缩文件mkfile.gz进行接压缩,可执行下图命令:

(2)使用bzip2压缩工具

使用bzip2制作的压缩文件默认的扩展名为.bz2

如下图的命令中是对mkfile文件用bzip2以较高压缩比进行压缩(使用-9选项可以提高压缩的比率)

压缩后会生成压缩文件mkfile.bz2(原始文件mkfile不再保留),压缩后的文件大小变为30KB(未压缩时为62KB)

解压缩时只需要使用带-d选项的bzip2命令即可,或者直接使用bunzip2命令

如要将压缩文件mkfile.gz进行解压缩,可执行以下操作:

(3)使用tar归档和释放工具

tar命令主要是用于对目录和文件进行归档,在实际的备份工作中,通常在归档的同时也会将包文件进行压缩(需要调用前面的gzip或bzip2命令)以节省磁盘空间

注:使用tar命令时,选项前的-号可以省略,tar命令常用的选项如下:

-c        创建.tar格式的包文件

-C       解压时指定释放的目标文件夹

-f         表示使用归档文件

-j         调用bzip2程序进行压缩或解压

-p         打包时保留文件及目录的权限

-P         打包时保留文件及目录的绝对路径

-t         列表查看包内的文件

-v         输出详细信息

-x         解开.tar格式的包文件

-z         调用gzip程序进行压缩或解压

  • 制作归档备份文件时,tar命令的基本格式是:

                        tar 【选项】...         归档及压缩文件名         需要归档的源文件或目录

如果需要对制作的归档文件进行压缩,可以通过-z或-j选项自动调用压缩工具进行压缩

执行下图中的命令将会对/etc和/boot目录进行备份,在当前目录下生产名为sysfile.tar.gz的归档压缩包

  • 从归档文件中恢复数据

解压并释放归档压缩包文件时,tar命令的基本格式是:

tar         【选项】...         归档及压缩文件名         【-C 目标目录】

如以下命令是从备份文件usershome.tar.bz2中恢复数据,释放到/etc目录下(将覆盖现有文件)

注:在大部分的备份及恢复工作中,只使用tar命令就可以很好的结合gzip、bzip工具协同工作

无需再执行gzip或bzip命令,但要注意这两个压缩工具的命令程序必须存在

6、使用vi文本编辑器

vi是一个功能强大的全屏幕文本编辑工具,一直以来都作为类Unix操作系统的默认文本编辑器。

vim是vi文本编辑器的增强版本(在vi文本编辑器的基础上扩展了很多实用的功能),习惯上也将vim称为vi

6.1 vi编辑器的工作模式

在vi编辑器中有三种不同的工作模式:命令模式、输入模式和末行模式。在不同的模式中能够对文件进行的操作也不相同。

(1)命令模式

启动vi编辑器后默认进入命令模式,该模式中主要完成如光标移动、字符串查找、删除、复制、粘贴文件内容等相关操作

(2)输入模式

该模式中的主要操作就是录入文件内容,可以对文本文件正文进行修改或添加新的内容。

注:处于输入模式时,vi编辑器的最后一行会出现--INSERT--的状态提示信息

(3)末行模式

该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。

注:处于末行模式时,vi编辑器的最后一行会出现冒号:提示符

可以通过不同的按键操作在不同模式间进行切换

  • 31
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值