vim及输入输出管理

一、vim三种工作模式

       命令模式

       插入模式

       退出模式

二、命令模式下的各类操作

1.配置vim工作方式

1)临时设定

       命令模式是vim打开文件后默认进入的模式,这个模式中不能插入字符,但是可以设定vim的工作方式

:set nu               ##添加行号

:set nonu           ##取消编号

:set cursorline    ##下划线

:set mouse=a    ##添加鼠标选择

注意:在vim中直接设定vim的工作方式是临时设定,也就是说当vim关闭,设定失效

2)永久设定

如果要永久设定需要root用户编写"/etc/vimrc".这个文件也是vim的配置文件

#永久设定
vim /etc/vimrc
set nu
set mouse=a
set cursorline

2.在命令模式下如何管理字符

按"x" ##删除光标所在字符

按“p“    ##粘贴

按"u" ##undo 恢复

按"ctrl+r" ##redo 撤销恢复

按"y" ##复制 

"yw" ##复制一个单词

“y5w”##复制五个单词

"yl" ##复制一个字母

"y3l"##复制三个字母

"yy" ##复制一整行

"y5y"     ##复制5行

按"c" ##剪切

"cw" ##剪掉一个单词

"cl" ##剪掉一个字母

"cc" ##剪掉一整行

"c5c" ##剪掉5行

 注意:

     用C做剪切时,会进入插入模式,如果要粘贴,需要退出插入模式。按<ESC>再按P

按"d" ##删除

"dw" ##删除一个单词
"dl" ##删除一个字母
"dd" ##删除一整行

"d5d" ##删除5行

3.vim的可视化模式

在可视模式下可以区域选择字符
  ctrl+v       ###进入可视化模式

  按"上|下|左|右"移动光标选择区域,按相应操作键就可以对选择区域进行操作

注意:在命令模式下;不可用鼠标选择

     

批量添加字符:

      step1: 把光标停留在想要加入字符所在的列的第一行 

      step2: 移动光标选择添加字符所在列 

      step3: "I"进入插入模式 

      step4: 写入要插入的字符

      step5: "ESC"退出插入模式,字符批量添加成功

      

4.批量字符替换

:%s/源字符/替换后字符           ##每一行出现的第一个关键字
:%s/源字符/替换后字符/g        ##全文替换,s所有行,g表示所有列
:3,5s/源字符/替换后字符/g       ##替换第三行到第五行的关键字
:/lp/,/halt/s/sbin/hello/g               ##lp字符和halt字符之间的所有关键字

5.光标移动及字符搜索

1)光标移动

      :数字            ##光标移动到指定的行
   <HOME>        ##光标移动到行首
     <END>         ##光标移动到行尾
          G              ##光标移动到最后一行
          gg            ##光标移动到第一行

2)字符查找

      /关键字
      按“n“    #向下匹配
      按“N“    #向上匹配    

6.在vim中编写多个文件
vim    file                 #打开一个文件
:sp     filename       #打开另一文件

ctrl+w  上|下|左|右        ###光标在窗口之间的移动

三、插入模式下操作     

        i        ##光标所在位置插入
        I        ##光标所在行的行首插入
       A        ##光标所在行行尾插入
       a        ##光标所在字符的下个字符插入
       s        ##删除光标所在字符插入
       S        ##删除光标所在行插入
       o        ##光标所在行的下一行插入
       O        ##光标所在行的上一行插入

四、退出模式

        :q         ###退出,当vim进入文件没有对文件内容做任何操作可以按"q"退出

       :q!        ###强行退出,当vim进入文件对文件内容有操作但不想保存退出

       :wq      ###保存退出

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

五、文件输入输出管理

1.输入输出定义

   1)输入就是我们的键盘,鼠标和我们用这些硬件在系统只哦个录入的字符

   2)输出就是系统接收到我们想要实现的功能字符后,经过进程的处理产生字符
         输出会有两种出现:
               编号1为正确输出
               编号2为错误输出
      默认着两种输出都会被系统定向到字符设备中(/dev/)

2.管理输出

1)输出重定向:重定向动作会覆盖源文件内容
        >         ##重定向正确输出
       2>        ##重定向错误输出
      &>        ##重定向所有输出

   2>&1      ##把错误输出的编号由2转换为1

举例:

find /etc/ -name passwd    > file.out     #将passwd里面正确的输出( > )重定向到file.out中

      

find /etc/ -name passwd    > file.out     #将passwd里面正确的输出( > )重定向到file.out中

        

find /etc/ -name passwd    &> file.all     #将passwd里面全部的输出(&>)|(2>&1)重定向到file.all中

    

重输出会覆盖原文件

         

2)输出追加: 追加会把定向的输出放到原文件最后,不会覆盖原文件

>>        ##追加正确输出
2>>        ##追加错误输出
&>>        ##追加所有输出
举例:find /etc/ -name passwd >> westos       #将passwd的正确输出内容追加( >> )到westos中       

            且不会覆盖原文件

          

3.用重定向完成非交互式多行录入

   方法:首尾一致,标准为EOF

     <<EOF
     内容
     EOF

    举例:      cat  >file  <<EOF             #查看huanying.sh的文件把它导入到file中

                      hello

                      EOF

                      sh     huanying.sh           #在我们调用sh命令不能自动运行,需要借助<<输入重定向符号进行重定向。                      

                 

4.管道:通过管道后输出会变成输入,那么不会再输出到字符设备文件中,显示到屏幕

      |       ##把第一条命令的正确输出变成第二条命令的输入

    tee    ##将输出复制一份到指定位置

   举例: ls   /bin   |   wc -l         ##统计/bin中有多少文件,且没有显示ls命令的输出

                ls   /bin   |   tee   file   |   wc   -l    ###统计/bin中有多少个文件,并将ls命令的输出通过tee保存到file文件中

                

                     echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值