【Linux原理】第四章目录和文件管理(二)

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

一、查看文件内容。

1、cat命令---显示并连接(concatenate)文件的内容。在实际应用中更多的用于查看文件内容。如果需要查看多个文件的内容,可以添加多个文件路径,中间以空格隔开。格式为:

[root@lisi benet]# cat aaa.txt bbb.txt表示同时查看aaa.txtbbb

2、moreless命令----分页查看文件内容。当文件中的内容过多时使用,便于我们从头到尾仔细的阅读文件内容。

使用more时会在左下角显示整个文件中的百分比,使用空格键可以向下翻一屏,按b向上翻一屏,按q退出并返回到刚才的命令环境。但是这种方式,一旦翻到最后一页将没法向上翻会自动退出。

[root@lisi ~]# more /etc/httpd/conf/httpd.conf查看网站配置文件。只要是以.conf结尾的东西都是配置文件。

还可以结合管道符号“|”另外使用less时不会自动退出。

3、headtail命令----查看文件开头或末尾的部分内容。

Head是显示文件开头的一部分内容;tail是显示末尾的一部分内容。可以使用-n选项(n为具体行数)指定需要显示的多少。若不指定默认只显示十行。例如:

[root@lisi ~]# head -4 /etc/passwd表示查看用户账户文件,passwd是用来保存用户账户的文件。

Tail命令通常用于查看系统日志或者某些较新的记录信息。配合-f选项时,还可以跟踪文件末尾内容的动态更新。使用Ctrl+C终止。

二、统计和检索文件内容。

1、wc命令----统计文件内容中的单词数量(word count)、行数等。

 -l统计文件内容中的行数

 -w统计文件内容中的单词个数(以空格或者制表位作为分割)。

 -c统计文件内容中的字节数。(注意wc只统计文件的内容)。

[root@lisi ~]# wc -l /etc/passwd表示统计出当前系统中所拥有的用户账户数量。还可以跟管道符号进行合作显示,例如:下面表示只显示

[root@lisi ~]# find /etc -name "*.conf" | wc -l多少行以.conf结尾的。

默认将统计指定文件的行数l、单词w、字节c三个选项。

2、grep命令----检索、过滤文件内容。

用于在文件中查找并显示包含指定字符串的行,可以直接指定关键字符串作为查找条件(如^word”表示以word开头;“word$”表示以word结尾;“^#”表示以#号开头;“^$”表示空行;)格式如下:

grep   [选项]  查找条件  目标文件的位置

 -i查找内容时忽略大小写(ignore case)。

 -v反转查找(invert),即输出与查找条件不符合的行。

[root@lisi]# grep -i "jis" /etc/php.ini表示忽略大小写,在php.ini文件中查找内容为“jis”的行。

注意:是查找文件内容,路径后面要跟明确的文件,不是目录。

Linux系统字符界面中#号开头的都是注释文字,不起任何作用。所以在想很友好的查看全文的情况下就会用到反转查找“-v”。例:

[root@lisi ]# grep -v "^#" /etc/yum.conf | grep -v "^$"这是一条反转查找的命令,前面是不显示以#号开头的意思;中间是目录及文件位置;然后输出给管道符号后面的命令,表示不显示空行。

三、备份与恢复文档。

1、第一种压缩和解压缩工具gzipgunzip命令。

使用gzip制作的压缩文件默认的扩展名为.gz制作时使用-9”选项可以提高压缩的比率。原始文件不再保留。压缩例如:

[root@lisi ~]# gzip install.log表示压缩当前目录下的install.log日志。

需要高压缩的话加“-9”选项。

当需要解压缩时,需要使用-d选项,具体的用法是:

[root@lisi ~]# gzip -d install.log.gz另外一种方法是↓:两种方法

[root@lisi ~]# gunzip install.log.gz都可以解gzip的压缩文件。

2、使用bzip2bunzip2命令压缩和解压缩文件。

使用bzip2制作的压缩文件默认的扩展名为“.bz2”。原始文件也是不再保留。使用方法和gzip一样。只能压缩文件。bzip2更高效一点,使用“-r 后面跟目录”可以对目录里面的文件进行一次性全部压缩。

3、使用tar归档和释放工具。

在实际的备份中,通常在归档的同时也会将包文件进行压缩,以便节省磁盘空间,使用tar时选项前的“-”号可以省略。常用选项:

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

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

 -f表示使用归档文件。这是必选项。

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

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

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

 -t列表查看包内的文件。

 -v输出详细信息(verbose),显示解压过程。

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

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

制作归档文件,可以理解为备份加压缩,不删原件,格式如下:

tar  [选项]  归档及压缩文件名…  需要归档的源文件或目录…

[root@lisi ~]# tar cvjf accp.tar.bz2 ./install.log ./benet这条命令的意思是c建立归档、v显示过程、j使用bzip2压缩、f必选项;accp是名称(后缀最好写全);后面两个是需要归档的文件或目录。

从归档文件中恢复数据,解压释放的基本格式如下所示:

tar  [选项]  需要解压的归档及压缩文件名…  [-C 目标目录]

默认情况下,恢复出的数据将释放到当前目录中,如果要恢复到指定文件夹,还需要结合-C选项来指定位置。例如:

[root@lisi ~]# tar jvxf accp.tar.bz2 -C /  表示释放到根目录。

三、使用vi文本编辑器。

Vi是一个功能强大的全屏幕文本编辑工具,vimvi的增强版本,在vi上扩展了很多使用功能,但是习惯上也将vim称作vi。在Linux系统中所有文件都是可以进行配置的。

Vi编辑器的工作模式。

 命令模式:启动时的默认模式,此模式中主要完成如光标移动、字符串查找以及删除复制查找粘贴文件内容等相关操作。

 输入模式:主要的操作就是录入文件内容,处于输入模式时在编辑器的最后一行会出现插入--INSERT--的状态提示信息。

 末行模式:该模式可以设置vi编辑环境、保存文件、退出编辑器以及对文件内容进行查找替换等操作,最后一行会出现冒号

从命令模式按冒号“:”可以进入末行模式;而如果按aio等键可以进入输入模式;在末行和输入模式按ESC键返回命令模式。

1、令模式的基本操作,执行单独的vi就可以进入命令模式,还会显示相关的版本信息。若要编辑的文件并不存在,则vi将根据该文件名称打开一个新的空文件。相当于新建了。

vi的命令模式中,可以输入特定的按键(称之为vi操作命令,注意区别于Linux系统命令)下面是模式切换的一些按键和作用:

 a在当前光标位置之后插入内容。

 A光标所在行的末尾(行尾)插入内容。

 i在当前光标位置之前插入内容。

 I光标所在行的开头(行首)插入内容。

 L是在本页的最后一行行首插入内容。

 o在光标所在行的后面插入一个新行

 O在光标所在行的前面插入一个新行

2移动光标。最基本的使用方法是“↑↓←→”四个方向键。

 使用page down或快捷键Ctrl+F向下翻动一整页内容。

 使用page Up或快捷键Ctrl+B向上翻动一整页内容。

其中的page downpage Up同样适用于vi的输入模式。

行内快速跳转

 home键或“^”或数字0将快速跳转到本行的行首。

 end键或$将光标快速跳转到本行的行尾。

home键和end键同样也适用在vi编辑器的输入模式中。

行间快速跳转

 使用1G或者gg可跳转到文件内容的第一行。

 使用G可以跳转的文件的最后一行。

 使用命令#G,跳转文件中的第##代表数字)。

为了便于查看行间跳转结果,可以在末行模式使用:set nu命令即可显示行号,执行:set nonu命令可以取消显示行号。

3vi编辑器的命令模式中删除、复制和粘贴。

 使用xdel按键删除光标处的单个字符。x是往后面删除;X是往前面删除。

 使用命令dd删除光标所在行,使用#dd的形式还可以删除从光标处开始的#行内容(#号是具体数字)

 使用按键命令d^删除当前光标之前到行首的所有字符。

 使用按键命令d$删除当前光标处到行尾的所有字符。

 使用dw删除光标所在的单词

 使用按键ddp可以进行上下行对调,把光标所在行和下面一行调。

 复制命令,使用按键yy复制当前行整行的内容到剪切板,使用#yy还可以复制从光标处开始的#行内容。

 粘贴操作,vi编辑器中前一次被复制或删除的内容将会保存到剪切板缓存器中,p键即可将缓存器中的内容粘贴到光标位置处之后,按P键则会粘贴光标之前。(注意大小写)

 使用shift+r连续替换光标所在单词。Replace替换

4、vi编辑器的命令模式中查找文件内容。

 后可以输入指定的字符串,从光标处开始向后查找,然后按n键向后查看下一个结果,按N键查看上一个查找结果;如果?则从光标处向前查找。此时按n键向上查看搜索结果,按N键向下。

5、撤销编辑及保存和退出。u键命令用于取消最近一次的操作,并回复操作结果,可以多次重复按u键执行恢复操作;U键命令用于取消对当前所在行所做的所有编辑。

vi的命令模式中,可以按ZZ按键保存文件内容并退出。

四、末行模式中的基本操作。在命令模式中按“:”进入末行模式

1保存文件及退出vi编辑器。

 :w命令保存文件,若需要另存为其他文件,则需要指定新的文件名,必要时还可以指定文件路径。

 退处vi编辑器可以使用:q进行退处或者使用:q!命令强行退出(不保存即退出)。

 保存并退处。可以使用命令:qw:x来实现和命令模式中的ZZ

2打开新文件或读入其他文件内容。

 在当前的vi编辑器中,执行“:e 新的文件”形式的末行命令可以编辑(edit)新文件。

 在当前文件中读入其他文件内容。执行“:r 其他文件”形式的末行命令可以读入(read)其他文件内容,并将其复制到当前光标位置行的下一行开始。

3、替换文件内容。vi的末行模式中,可以将特定的字符替换成新的内容,使用替换功能的末行命令格式如下:

:[替换范围]  subs  /旧的内容/新的内容[/g]

上述格式中关键字为subsubstitute,替换)也可以简写为s

替换范围是可选部分,缺省时只对当前行的内容进行替换。一般有两种方式:

 %在整个文件内容中进行查找并替换。

 nm在指定行数范围以内的文件内容中进行查找并替换。

后面的/g是可选项,表示替换范围内每一行的所有匹配项,省略/g时将只替换每行中的第一个匹配结果。例如:

:28,38 s /Installing/benet/g表示替换从28行到38行的Installing单词替换为单词benet而且是全部替换。不加g代表只替换每一行的第一个。


你可能感兴趣的:(linux,配置文件,文件管理)