vim的补充及文件输入输出管理

一、vim的功能补充

  1.可视化操作

      a、在vim中不能使用鼠标框选,若要操作某一区域,需要进入可视化模式(ctrl+v),按上|下|左|右操作即可

      b、可视化模式下批量添加字符

            将光标停在所要操作的行的第1列--->移动光标选择要添加字符的列--->“I”进入插入模式--->编辑要插入的字符

             --->"ESC"退出即可添加成功

                            
  2.vim中字符的替换

        %s/word1/word2/g           ##全文将word1替换成word2

        2,15s/word1/word2/g    ##在2-15行之间将word1替换成word2

          g                                       ##全文替换,没有g表示只替换每行的第一个

         :将1-10行中的bin全部替换成hello,使用1,10s/bin/hello/g,更改前如下:

                     

               更改后如下:

                   

  3.vim中字符的查找

          /关键字                  ##全文匹配关键字           

               n                       ##向下匹配关键字

               N                      ##向上匹配关键字

              :匹配关键字:/sbin

                    

  4.vim中光标的移动

               G                      ##快速移动到最后一行

             :n                     ##快速移动到第n行

               gg                     ##快速移动到第一行

  5.vim中同时编辑多个文件

             :sp filename           ##同一vim下打开新文件

             :ctrl+w  上            ##光标进入上面窗口编辑

             :ctrl+w  下            ##光标进入下面窗口编辑 

                       

  6.插入模式

             i                     ##在光标所在位置插入字符

             I                     ##在光标所在行行首插入字符

            o                     ##在光标所在行的下一行插入字符

            O                     ##在光标所在行的上一行插入字符

            s                     ##删除光标所在字符并插入字符

            S                     ##删除光标所在行并插入字符

            a                     ##在光标所在字符的下一个字符处插入字符

            A                     ##在光标所在行行尾插入字符

  7.退出模式

          :q                    ##对文件不做任何操作,退出

          :q!                  ##对文件内容有操作,但不保存退出

          :wq                   ##对文件保存并退出

          :wq!                 ##强制对文件保存退出,只针对root用户或文件所有人生效

         :w filename           ##相当于另存新件

        :ZZ                   ##对文件有操作,保存退出;对文件没有操作,直接退出

二、文件输入输出管理

  1.输入输出的定义

        输入:用鼠标、键盘等硬件在系统中录入的字符

        输出:系统接受到功能字符,经过进程处理产生的字符

       注意:系统输出结果有两种:编号1的正确输出和编号2的错误输出,输出结果被系统默认输出到字符设备

  2.如何管理输出

       a、非交互式多行录入

          例如运行程序,自动更改密码

                    

        b、重定向输出

                >            ##重定向正确输出

              2>           ##重定向错误输出

              &>           ##重定向所有输出

             2>&1        #把错误输出转换为正确输出

                     

        c、追加

           注意:重定向会覆盖原文件,若在原文件后追加,使用以下命令

             >>           ##追加正确输出

            2>>         ##追加错误输出

            &>>        ##追加所有输出

       d、管道命令

            管道符 |          ##只有编号为1的输出(即正确输出)可通过管道

            注意:管道符将输入变为输出,但不会保存!如需要保存,使用以下命令

           输出结果  |   tee filename

             

练习

1.显示当前时间 , 显示格式为 hh:mm:ss, 并保存到文件 time.txt文件中

2.显示 /etc/passwd 文件的第 15-18 行内容

3.显示 /bin 中文件包含大写字母的文件 , 保存到bin_westos_file.txt 文件中,并统计个数显示到屏幕

4.在 student 用户下查找 /etc 下 passwd 文件,屏蔽错误输出

5.在 student 用户下查找 /etc 下 passwd 文件,正确输出保存到 /tmp/westos.out 错误输出保存到 /tmp/westos.err

6.在 student 用户下查找 /etc 下 passwd 文件,显示命令输出并保存输出到 /tmp/westos.all 中

操作如下