在Linux系统中,绝大多数的配置文件都是以普通文本格式保存的,这些配置文件决定着系统及相关服务,程序的运行特性。
一、查看文件内容。
1、cat命令---显示并连接(concatenate)文件的内容。在实际应用中更多的用于查看文件内容。如果需要查看多个文件的内容,可以添加多个文件路径,中间以空格隔开。格式为:
[[email protected] benet]# cat aaa.txt bbb.txt表示同时查看aaa.txt和bbb。
2、more和less命令----分页查看文件内容。当文件中的内容过多时使用,便于我们从头到尾仔细的阅读文件内容。
当使用more时会在左下角显示整个文件中的百分比,使用空格键可以向下翻一屏,按b向上翻一屏,按q退出并返回到刚才的命令环境。但是这种方式,一旦翻到最后一页将没法向上翻会自动退出。
[[email protected] ~]# more /etc/httpd/conf/httpd.conf查看网站配置文件。只要是以.conf结尾的东西都是配置文件。
还可以结合管道符号“|”另外使用less时不会自动退出。
3、head和tail命令----查看文件开头或末尾的部分内容。
Head是显示文件开头的一部分内容;tail是显示末尾的一部分内容。可以使用-n选项(n为具体行数)指定需要显示的多少。若不指定默认只显示十行。例如:
[[email protected] ~]# head -4 /etc/passwd表示查看用户账户文件,passwd是用来保存用户账户的文件。
Tail命令通常用于查看系统日志或者某些较新的记录信息。配合-f选项时,还可以跟踪文件末尾内容的动态更新。使用Ctrl+C终止。
二、统计和检索文件内容。
1、wc命令----统计文件内容中的单词数量(word count)、行数等。
-l:统计文件内容中的行数。
-w:统计文件内容中的单词个数(以空格或者制表位作为分割)。
-c:统计文件内容中的字节数。(注意wc只统计文件的内容)。
[[email protected] ~]# wc -l /etc/passwd表示统计出当前系统中所拥有的用户账户数量。还可以跟管道符号进行合作显示,例如:下面表示只显示
[[email protected] ~]# find /etc -name "*.conf" | wc -l多少行以.conf结尾的。
默认将统计指定文件的行数l、单词w、字节c三个选项。
2、grep命令----检索、过滤文件内容。
用于在文件中查找并显示包含指定字符串的行,可以直接指定关键字符串作为查找条件(如“^word”表示以word开头;“word$”表示以word结尾;“^#”表示以#号开头;“^$”表示空行;)格式如下:
grep [选项] 查找条件 目标文件的位置
-i:查找内容时忽略大小写(ignore case)。
-v:反转查找(invert),即输出与查找条件不符合的行。
[[email protected]]# grep -i "jis" /etc/php.ini表示忽略大小写,在php.ini文件中查找内容为“jis”的行。
注意:是查找文件内容,路径后面要跟明确的文件,不是目录。
在Linux系统字符界面中#号开头的都是注释文字,不起任何作用。所以在想很友好的查看全文的情况下就会用到反转查找“-v”。例:
[[email protected] ]# grep -v "^#" /etc/yum.conf | grep -v "^$"这是一条反转查找的命令,前面是不显示以#号开头的意思;中间是目录及文件位置;然后输出给管道符号后面的命令,表示不显示空行。
三、备份与恢复文档。
1、第一种压缩和解压缩工具gzip和gunzip命令。
使用gzip制作的压缩文件默认的扩展名为“.gz”制作时使用“-9”选项可以提高压缩的比率。原始文件不再保留。压缩例如:
[[email protected] ~]# gzip install.log表示压缩当前目录下的install.log日志。
需要高压缩的话加“-9”选项。
当需要解压缩时,需要使用-d选项,具体的用法是:
[[email protected] ~]# gzip -d install.log.gz另外一种方法是↓:两种方法
[[email protected] ~]# gunzip install.log.gz都可以解gzip的压缩文件。
2、使用bzip2和bunzip2命令压缩和解压缩文件。
使用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 [选项] 归档及压缩文件名… 需要归档的源文件或目录…
[[email protected] ~]# tar cvjf accp.tar.bz2 ./install.log ./benet这条命令的意思是c建立归档、v显示过程、j使用bzip2压缩、f必选项;accp是名称(后缀最好写全);后面两个是需要归档的文件或目录。
从归档文件中恢复数据,解压释放的基本格式如下所示:
tar [选项] 需要解压的归档及压缩文件名… [-C 目标目录]
默认情况下,恢复出的数据将释放到当前目录中,如果要恢复到指定文件夹,还需要结合-C选项来指定位置。例如:
[[email protected] ~]# tar jvxf accp.tar.bz2 -C / 表示释放到根目录。
三、使用vi文本编辑器。
Vi是一个功能强大的全屏幕文本编辑工具,vim是vi的增强版本,在vi上扩展了很多使用功能,但是习惯上也将vim称作vi。在Linux系统中所有文件都是可以进行配置的。
Vi编辑器的工作模式。
命令模式:启动时的默认模式,此模式中主要完成如光标移动、字符串查找以及删除复制查找粘贴文件内容等相关操作。
输入模式:主要的操作就是录入文件内容,处于输入模式时在编辑器的最后一行会出现插入“--INSERT--”的状态提示信息。
末行模式:该模式可以设置vi编辑环境、保存文件、退出编辑器以及对文件内容进行查找替换等操作,最后一行会出现冒号。
从命令模式按冒号“:”可以进入末行模式;而如果按a、i、o等键可以进入输入模式;在末行和输入模式按ESC键返回命令模式。
1、命令模式的基本操作,执行单独的vi就可以进入命令模式,还会显示相关的版本信息。若要编辑的文件并不存在,则vi将根据该文件名称打开一个新的空文件。相当于新建了。
在vi的命令模式中,可以输入特定的按键(称之为vi操作命令,注意区别于Linux系统命令)下面是模式切换的一些按键和作用:
a:在当前光标位置之后插入内容。
A:在光标所在行的末尾(行尾)插入内容。
i:在当前光标位置之前插入内容。
I:在光标所在行的开头(行首)插入内容。
L:是在本页的最后一行行首插入内容。
o:在光标所在行的后面插入一个新行。
O:在光标所在行的前面插入一个新行。
2、移动光标。最基本的使用方法是“↑↓←→”四个方向键。
使用page down或快捷键Ctrl+F向下翻动一整页内容。
使用page Up或快捷键Ctrl+B向上翻动一整页内容。
其中的page down和page Up同样适用于vi的输入模式。
行内快速跳转
按home键或“^”或数字0键将快速跳转到本行的行首。
按end键或$键将光标快速跳转到本行的行尾。
home键和end键同样也适用在vi编辑器的输入模式中。
行间快速跳转
使用1G或者gg可跳转到文件内容的第一行。
使用G可以跳转的文件的最后一行。
使用命令#G,跳转文件中的第#行(#代表数字)。
为了便于查看行间跳转结果,可以在末行模式使用:set nu命令即可显示行号,执行:set nonu命令可以取消显示行号。
3、在vi编辑器的命令模式中删除、复制和粘贴。
使用x或del按键删除光标处的单个字符。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的末行模式中,可以将特定的字符替换成新的内容,使用替换功能的末行命令格式如下:
:[替换范围] sub或s /旧的内容/新的内容[/g]
上述格式中关键字为sub(substitute,替换)也可以简写为s。
替换范围是可选部分,缺省时只对当前行的内容进行替换。一般有两种方式:
%:在整个文件内容中进行查找并替换。
n,m:在指定行数范围以内的文件内容中进行查找并替换。
后面的/g是可选项,表示替换范围内每一行的所有匹配项,省略/g时将只替换每行中的第一个匹配结果。例如:
:28,38 s /Installing/benet/g表示替换从28行到38行的Installing单词替换为单词benet而且是全部替换。不加g代表只替换每一行的第一个。