【Linux】vi文件编辑利器常用命令

1 浏览文件内容

1.1 使用cat命令

运行cat命令会直接将文件内容都打印出来。
样例如下:

[chaoql@localhost ~]$ cat hallo.txt 
hallo world!1
hallo world!2
hallo world!3
hallo world!4
hallo world!5
hallo world!6
hallo world!7
hallo world!8
hallo world!9
hallo world!0

1.2 使用more命令

会将文件内容进行分屏显示,若当前文件内容不足一屏,则显示效果与cat命令一致;若当前文件内容大于一屏,则会进行分屏显示,且最下方会显示当前一屏内容占总内容的百分比,回车显示下一行,按b显示下一行,空格显示下一页,q退出
样例如下:

[chaoql@localhost ~]$ more a.txt 
cd mydir/mydira/
vi kk.c
ls kk.c -l
mv kk.c aa.c
cp aa.c /mydir/kk.c
cp aa.c mydir/kk.c
cd /root
cd /chaoql
cp aa.c ~/mydir/kk.c
cd ..
chmod u=rwx,go=r kk.c
...(中间内容为节省空间,已略去)...
--More--(9%)

1.3 使用vi命令

vi命令涉及一系列操作,但在浏览文件内容时只需要输入vi hallo.txt即可,其他操作请看后文。
样例如下:

[chaoql@localhost ~]$ vi hallo.txt
hallo world!1
hallo world!2
hallo world!3
hallo world!4
hallo world!5
hallo world!6
hallo world!7
hallo world!8
hallo world!9
hallo world!0
~                                                                                                                                                                                 
~                                                                                                                                                                                 
~                                                                                                                                                                                                                                                                                         
"hallo.txt" 10L, 140C

2 文件编辑

2.1 进入命令模式

首先打开文件,进入命令模式:

[chaoql@localhost ~]$ vi hallo.txt

2.2 进入编辑模式

在命令模式下,若要进入编辑模式,则按i,如下:

hallo world!1
hallo world!2
hallo world!3
hallo world!4
hallo world!5
hallo world!6
hallo world!7
hallo world!8
hallo world!9
hallo world!0
~                                                                                                                                                                                 
~                                                                                                                                                                                 
~
-- INSERT --

在编辑模式修改文件结束后,按Esc键即可退出到命令模式,若要继续退出,则输入:q,若要保存并退出则输入:wq,若强制退出则输入:q!

3 其他操作

3.1 查找字符串

如果我们想要在一个大文件中查找某一个字符串进行修改,按照我们现在学习的知识,通过
vi命令打开文件,然后按键盘上的上下键来滚动光标一行一行肉眼扫描,这样过于麻烦。简单的方法是:在命令模式下,输入/,然后输入你想要查询的字符串,最后回车即可
例如输入/3s,系统光标就会定位到字符串3s,若全文不止一个3s,按n键即可跳转到下一个字符串3s

3.2 定位具体行

首先,我们可以在浏览文件内容时显示行数,具体操作为:在命令模式下输入:set nu,显示样例如下:

  1 hallo world!1
  2 hallo world!2
  3 hallo world!3
  4 hallo world!4
  5 hallo world!5
  6 hallo world!6
  7 hallo world!7
  8 hallo world!8
  9 hallo world!9
 10 hallo world!0
~                                                                                                                                                                                 
~                                                                                                                                                                                                                                                                                                                                                       
~                 
:set nu 

但是,若要在一个大文件中定位到具体行就不可能采用这种方法,此时在命令模式下输入:,再输入具体的行号然后按回车,光标就会定位到该行。例如:在命令模式下输入:3,那么光标就会定位到第3行。

3.3 复制粘贴

用vi命令打开文件进入命令模式,把光标移动到希望复制的那一行内容上面,然后连按yy,这样就把这一行内容复制上了,然后按p就会把刚才复制的内容粘贴到下一行,按一次p粘贴一行。最后按shift和: 输入wq保存退出即可。

3.4 快速删除

用vi命令打开文件进入命令模式,把光标定位到想要删除的那一行内容上面,连按dd,就可以删除当前行的内容。
如果想要清空当前行下的所有内容,先连按999,然后再连按dd,这样就可以清空光标所在行下的所有内容了。

3.5 快速定位到文件首尾行

用vi命令打开文件进入命令模式,G可以快速将光标移动到最后一行。连按gg即可快速跳转到第一行

posted @ 2023-01-10 20:19  ccql  阅读(3)  评论(0编辑  收藏  举报  来源