Hacker基础之Linux篇:基础Linux命令五

1. vi

vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。


Linux中一般默认安装的的编辑器叫vi,而vimvi的增强版(vi Improved),很多发行版需要用户自己安装,但是vimvi编辑器完全兼容,但是vim实现了更多的增强功能。


这里如果详细的讲解vi的话,估计可以出一本书了,所以我们这里只给vi命令开个入门的教程


Hacker基础之Linux篇:基础Linux命令五

vi命令使用介绍:
命令格式:vi [选项] [参数]

命令功能:编辑模式下可以完成文本的编辑功能,命令模式下可以完成对文件的操作命令

命令的常用参数选项说明:

+   从指定行号的行开始先是文本内容

-b   以二进制模式打开文件,用于编辑二进制文件和可执行文件

-c    在完成对第一个文件编辑任务后,执行给出的指令

-d    以diff模式打开文件,当多个文件编辑时,显示文件差异部分

-l     使用lisp模式,打开lispshowmatch

-m   取消写文件功能,重设“write”选项

-M   关闭修改功能

-n    不实用缓存功能

-o    指定同时打开指定数目的文件

-R    以只读方式打开文件

-s    安静模式,不现实指令的任何错误信息

Hacker基础之Linux篇:基础Linux命令五


一般的用途基本就是在编辑文本上


1


比如我们要编辑一个httpd.conf文件


vi /etc/httpd/conf/httpd.conf


执行完这个之后,你就会全屏进入一个界面,我们按i来进入输入模式开始输入内容,然后按esc返回命令模式,最后在命令模式下用如下命令保存修改并退出


:wq


2


或者当你只想查看这个文件,并不想改变它,当然,最后的建议是用catmore指令,但是我们已经可以用vi做到这一点


vi -R /etc/httpd/conf/httpd.conf


退出是一样的


esc

:q



这个命令大概就只讲到这里了,深入的讲解看哪天有时间,因为vi本身就是一个相当大的操作指南


2. head & tail


headtail就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head用来显示档案的开头至标准输出中,而tail想当然尔就是看档案的结尾。


这里我们把两个命令合在一起介绍了,因为都差不多


Hacker基础之Linux篇:基础Linux命令五

head & tail命令使用介绍:
命令格式:

head [参数] [文件]

tail    [参数] [文件]

命令功能:用来显示开头或结尾某个数量的文字区块

命令的常用参数选项说明:

-q  隐藏文件名

-v  显示文件名

-c  显示字节数

-n  显示的行数

-f   循环读取(tail专用)


Hacker基础之Linux篇:基础Linux命令五


一般用途就是你不想在你的屏幕上都输满了所有的内容,只想查看那么几行内容的时候


1


我们想查看文件的前5行


head -n 5 index.php


或者文件的后5行数据


tail -n 5 index.php


2

或者你只想查看前10个字符的内容


head -c 10 index.php


或者文件的后10个字符串


tail -c 10 index.php


3

其中,tail还有个有趣的用法,就是-f选项


比如我们正在运行调试着某个程序,而这个程序是将log文件输出到某个文件,假设为test.log中,我们如果用vi或者cat之类的命令的话,如果有新的log写入文件中的时候,我们就没法实时获得最新的log信息,除非你关闭这个文件然后再次打开


这时候我们就可以用这个-f选项了


我们如下使用


tail -f test.log


tail命令就会一直循环输出这个文件的内容,即使有新的内容进来,也可以马上就显示在屏幕上


3. more


more命令,功能类似cat


cat命令是整个文件的内容从上到下显示在屏幕上。


more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空格键(space)就往下一页显示,按b键就会往回(back)一页显示,而且还有搜寻字串的功能。


需要注意的是,more命令从前向后读取文件,因此在启动时就加载整个文件。


如果你的文件很大,很有可能造成系统的死机。


Hacker基础之Linux篇:基础Linux命令五

more命令使用介绍:
命令格式:more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file … ]

命令功能:可以按页来查看文件的内容

命令的常用参数选项说明:

+n   从笫n行开始显示

-n    定义屏幕大小为n

+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示  

-c     从顶部清屏,然后显示

-d     禁用响铃功能

-l      忽略Ctrl+l(换页)字符

-p     通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

-s      把连续的多个空行显示为一行

-u     把文件内容中的下画线去掉

Hacker基础之Linux篇:基础Linux命令五


Hacker基础之Linux篇:基础Linux命令五

more常用的操作:

enter    向下n行,需要定义,默认为1行

ctrl+f   向下滚动一屏

space   向下滚动一屏

ctrl+b  返回上一屏

=          输出当前行的行号

:f        输出文件名和当前行的行号

v          调用vi编辑器

!command     调用shell,并执行命令 

q           退出more

Hacker基础之Linux篇:基础Linux命令五


常用的命令如下


1

显示第三行起的文件


more +3 httpd.conf


2


在文件中查找出现allow并且显示在前两行


more +/allow httpd.conf



3


有时候我们执行ls时候,一个目录下面的文件太多,瞬间就刷新了好多次屏幕,但是我们想看目录中的第一个文件是什么,我们可以这样


ls -il | more


中间那个|是管道符,用于将第一个命令的输出结果作为输入给第二个命令


本文完


Hacker基础之Linux篇:基础Linux命令五
Hacker基础之Linux篇:基础Linux命令五

Hacker基础之Linux篇:基础Linux命令五

发表评论

电子邮件地址不会被公开。 必填项已用*标注