Linux从入门到精通——vim及管理输入输出

####系统中输入输出的管理###

   1.理解系统的输入输出
        Linux系统中,编号为1的管理正确输出,编号为2的管理错误输出。

               

   2.管理输入输出的符号    

    (1)输出重定向  
             >       ##重定向正确输出
            2>      ##重定向错误输出
            &>      ##重定向所有输出
            注意;重定向会覆盖源文件的内容
                   示例:
                   注意:以下实验必须在student用户(普通用户)下完成,在超级用户下没有错误(即被拒绝的输出,即为2的输出,只有为1的正确输出)
                   find /etc/ -name passwd  > file       ##定向正确输出到file
                   find /etc/ -name passwd  2>     file.err    ##定向错误输出到file
                   find /etc/ -name passwd  &>     file.all    ##定向所有输出到file
                   > file                     ##清空file

      ffind /etc/ -name passwd 2>&1   file.all   ##将错误输出(2)转换为正确输出(1),全部输出到file文件中

      输出追加

        >>           ##追加正确输出到文件最后
        2>>         ##追加错误输出到文件最后
        &>>         ##追加所有输出到文件最后
        注意:这个追加是不会覆盖源文件内容
       示例:
             find /etc/ -name passwd  >>     file           ##追加正确输出到file
             find /etc/ -name passwd  2>>    file.err    ##追加错误输出到file
             find /etc/ -name passwd  &>>    file.all    ##追加所有输出到file

     ffind /etc/ -name passwd 2>>&1   file.all   ##将错误输出(2)转换为正确输出(1),全部输出到file文件中

                      

     (2)输入重定向

            cat >file <<EOF            (  cat 命令具有交互界面, EFO后面的输出当做是给cat的输入,然后cat的输出再存入到file文件中  )

            HELLO

            WORLD

            EOF

####管道的应用###

1.管道的作用
     “  | ” 管道的作用是把前一条命令的输出变成后一条命令的输入,管道符前后都是命令,不能 find /etc/ -name passwd | file  这个是错误的,file是个文件不是命令

     注意:
                (1)管道只允许正确输出通过
                (2)通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的
                         如果需要保存输出内容,那么需要复制一份输出,用到的命令是“tee”


                示例:此实验在普通用户下操作:
                           find /etc/ -name passwd | wc -l     ##会看到的结果为2,因为错误输出不能通过管道
                           find /etc -name passwd 2>&1|wc -l   ##会看到19,因为编号为2的输出被“2>&1”转换为编号1
                           find /etc -name passwd 2>&1|tee file |wc -l ##保存一份输出到file再统计行数

                                 

####vim的常用功能###

vim的模式
     (1).命令模式: 浏览文件,临时更改vim的工作方式,对字符批量处理    
     (2).插入模式:对文件内容进行编辑

    (3).退出模式:退出vim程序

1.命令模式
   1)
       调整vim的工作方式
       在vim程序中
       :set 调整参数
                                 示例:  
                                        :set nu         ##在每一行前显示行号
                                        :set nonu       ##取消行号显示
                                        :set mouse=a       ##显示鼠标
                                        :set cursorline     ##显示行线
                               注意:
                                        在vim程序中设定的vim工作方式是临时的,在vim关闭后会还源
                                        如果要永久保存vim的工作方式需要编辑vim的配置文件:/etc/vimrc

                                                  


   2)
    字符的搜索
       /关键字              n向下匹配             N向上匹配
    
  3)
    字符的管理
             (y      ##复制)
                           yl      ##复制一个字母<C-F12>
                           y3l     ##复制3个字母
                           yw      ##复制一个单词
                           y3w     ##复制3个单词
                           yy      ##复制1行
                           y3y     ##复制3行
             (d        ##删除)    
                          dl      ##删除一个字母
                          d3l     ##删除3个字母
                          dw      ##删除1个单词
                          d3w     ##删除3个单词
                         dd      ##删除1行
                         d3d     ##删除3行
            (c       ##剪切)
                         cl      ##剪切1个字母
                         c3l     ##剪切3个字母
                         cw      ##剪切1个单词
                         c3w     ##剪切3个单词
                         cc      ##剪切1行
                         c3c     ##剪切3行
                                         "注意:在剪切之后vim会进入插入模式,如果要粘贴需要按【esc】退出插入模式然后按p粘贴"

               (p      ##粘贴)
               (u      ##撤销)
                  ctrl+r         ##恢复撤销

   4)
    vim可视化模式      ctrl + v        ##在这个模式下可以选择区域操作
              批量添加字符
                   ctrl + v 选中要加入字符所在的列
                  按大写的I
                  加入字符
                 按【esc】<C-F12>

                                                                            

   5)
    字符的替换
                                  :%s/要替换的字符/替换成的字符/g
                                  :%s/:/@/g                                              ##替换全文的   :为@              %代表全部的行
                                  :1,5s/:/@/g                                            ##替换1-5行的:为@
                 注意:  %s标示所有的行,g标示所有的列

                              

                                                  :%s/:/@/g                                                                      :1,5s/@/*/g

   6)
    vim 的分屏功能
                                                 ctrl+w s        ##上下分屏
                                                 ctrl+w v        ##左右分屏
                                                 ctrl+w c        ##关闭光标所在屏幕
                                                 ctrl+w 上下左右     ##光标移动到指定屏幕
                                                :sp file2      ##同时编辑当前文件和file2

                                          

   7)
    在命令模式下光标的移动
        gg     ##光标移动到文件的第一行
        G       ##光标移动到文件的最后
        :数字      ##光标移动到到指定的行



   2.插入模式
   1)
    插入模式下光标的移动
      i   ##光标所在位置插入
      I   ##光标所在行行首插入
      o   ##光标所在行下一行插入
      O   ##光标所在行的上一行插入
      a   ##光标所在字符的下一个字符插入
      A   ##光标所在行的行尾插入
      s   ##光标所在字符删除并插入
      S   ##光标所在行删除并插入


   3.vim的退出模式
      :q           ##退出,在文件内容没有被改变时使用
      :wq         ##退出保存
      :q!          ##强制退出不保存,在改变文件后不想保存时使用
      :wq!        ##强制退出保存  
                    ##在对只读文件编写时使用注意,所编辑的只读文件必须时当前用户的文件或者当前操作的用户时root
 

原文地址:https://www.cnblogs.com/wf-aiyouwei/p/9333695.html