zoukankan      html  css  js  c++  java
  • 20170721上课笔记

    vi 和emacs 编辑命令

    vi打开文件后,摁a将在光标后进入编辑模式,i则是光标前进入编辑模式,o则是另开新一行

    esc推出 若想撤销操作。首先esc退出到命令模式,摁字母u,可退回操作。也可以退出到命令模式,摁:w!

    vi分命令模式 编辑模式 行编辑模式 摁:进入行编辑模式,A I O进入编辑模式

    rpm -ivh 常用命令 带进度条安装

    rpm -Uvh 常用命令 若已安装旧版,则删除安装新版 若无安装旧版本,则直接安装

    若路径中带空格 则“”将路径引起来

    yum安装baseurl例:

    【Server】

    name=Server

    baseurl=file:///media/"OLE6.4 x86_64 dISC 1 20130225"/Server

    ZZ              保存退出

    :wq             保存退出

    :w               保存但不退出

    :q!         不保存, 并强制退出

    :w!            覆盖当前文件

    :w newfile   另存为新文件

     

     shell和unix命令

     

    :sh         ctrl+d   进入和退出shell

    ctrl+z         fg   将vi放入后台

     

    :!command       不退出vi, 执行unix命令

    :行号范围!command     :.,.+100!sort 100行排序

     

    四 模式切换

     

    i(I)              进入插入模式,在光标前(光标所在行的行首)输入

    a(A)            进入插入模式,在光标后(光标所在行的行尾)输入

    o(O)                 进入插入模式,在光标下一行(上一行)输入

    ESC            进入命令模式

    :                 进入行编辑模式

    r(R)            命令模式下替换光标下的单个(多个)字符(不切换模式)

     

    五 光标移动

     

     

     

    Home               移动到行首  或者 shift+6

    End            移动到行尾    或者 shift + 4

     

    Page Up, Page Down     整页移动

     

    G               移动到最后一行(文件尾)

    nG             移动光标到第n行

    gg              移动到第一行

    :set nu              设置行号

     

    六 命令模式下文本编辑

     

    --------------------------------------------------------------------------------|

            单位            |      删除              |      复制       |      粘贴       |

    --------------------------------------------------------------------------------|

    光标位置字符             |      x            |             |             |

    ----------------------------------------------------------------|        p           |

    光标位置到行尾          | D(d End 或 d$)  |  y End 或 y$  |        |

    ----------------------------------------------------------------|                     |

    光标所在行          |      dd          |      yy(Y)       |      P     |

    ----------------------------------------------------------------|                     |

    光标所在行以下n行   |      ndd        |      nyy  |在光标前面  |

    ----------------------------------------------------------------|      粘贴      |

    光标所在行至文件尾   |      dG          |      yG   |             |

    ----------------------------------------------------------------|                      |

    光标所在行至第n行   |      dnG        |      ynG |             |

    --------------------------------------------------------------------------------|

    删除d 复制y粘贴p,全文尾巴是G 头是gg,整行尾巴是end,头是home

     

    xp              调换两个字母的顺序

    u                撤销上次的操作

    .                 重复上一次的操作

     

    50a12 ESC        光标位置追加25对"12"

    ~               大小写转换

     

    (n)>>               当前n行向右移8个空格(一个制表符)

    (n)<<               当前n行向左移8个空格(一个制表符)

     

    ctrl+v               进入可视模式,使用光标选择,再结合删除/复制等快捷键操作

    V                整行选取的可视模式

     

    =====================================

    vi命令的一般格式: (命令)(数字)(文本目标)

    d3w      删除3个单词

    y3G 复制到第3行

    =====================================

     

    vimtutor           查看vi的帮助教程

    LANG=zh_CN.UTF-8 vimtutor    查看中文版(需要安装中文字体)

     

     ex命令

     

    d                删除行

    m               移动行

    co(t)                 复制行

     

    .                 当前行

    $                文件最后一行

    %                文件中每一行(等价1,$)

     

    =====================================

    ex命令的一般格式: (行范围)(命令)(行范围)

    :.,$d      删除当前行至文件尾

    :%t$ 复制所有行至文件尾

    =====================================

     

    八 模式搜索与替换

     

    vi命令模式下

     

    /pattern(:g/pattern) 按模式搜索

    /"pattern paterrn"    如果搜索模式中包含空格, 要使用单引号或双引号

    /<pattern>           搜索整个单词

    *                搜索光标当前单词

    n                同向重复搜索

    d(y)/pattern      通过搜索进行修改(向后, 删除或复制光标与模式之间字符串)

    d(y)?pattern      通过搜索进行修改(向前, 删除或复制光标与模式之间字符串)

     

    ex命令

     

    :s/old/new        当前行中替换第一次出现的模式

    :s/old/new/g           当前行中替换所有出现的模式,默认不区分大小写

    :s/old/new/gi          i区分大小写

    :s/old/new/gc         当前行中替换所有出现的模式, 需要确认

    :行范围s/old/new/gc    行号范围中替换所有出现的模式, 需要确认

    :%s/old/new/gi        全文范围中替换所有出现的模式, 区分大小写

    1,$s/old/new/g

    vi命令的等价方式

    /old                 搜索old

    cwnew ESC       修改为new(c为cut, w为word)(必须用c, 否则无法重复修改. w可为任意位置参数如$, 到行尾)

    n                重复搜索, 跳过一次修改

    n                重复搜索

    .                 重复修改

     

    :g/pattern               全局搜索

                      可以将:g与其它ex命令结合在一起, 实现全局替换删除移动和复制

                      :g/old/s//new/gc与:%s/old/new/gc效果相同

    :g/pattern/s/old/new/g(c)    在包含模式pattern的行中, 将old替换为new, g表示在该行进行全部替换, c表示需要确认

    :g/old/s//new/g      搜索模式与替换模式相同

     

    :g/pattern/d      删除符合模式的行

    :g/pattern/行范围d       删除符合模式的多行(:g/pattern1/.,/pattern2/d 删除pattern1和pattern2之间的行)

    :g/pattern/行范围m(t)行范围    移动(复制)符合模式的多行

     

    =============================================

    :g命令的一般格式: :g/pattern/行范围/ex命令/行范围

    =============================================

     

    :上箭头             访问ex命令的历史记录

     

    九 单词缩写与命令映射

     

    :ab abbr phrase       插入模式下设置单词缩写

    :unab abbr        撤销缩写

    :ab             查看当前定义的缩写

     

    :map x command          命令模式下设置映射命令

    :unmap x                撤销映射

    :map                查看当前定义的映射

     

    ctrl+v然后enter

    esc, backspace, delete    映射中防止ex解释键

    :map! x command         在插入模式下映射键

     

     c风格缩进

     

    ~home/.vimrc中加入以下设置, 可得到标准c风格缩进

    set nocp incsearch

    set cinoptions=:0,p0,t0

    set cinwords=if,else,while,do,for,switch,case

    set formatoptions=tcqr

    set cindent

    syntax on

    set nu

  • 相关阅读:
    MySQL客户端mysqladmin命令
    13 Linux磁盘管理
    12 Linux软件管理
    11 Linux压缩打包
    09 Linux输入输出
    08 LinuxACL控制
    07 Linux特殊权限
    06 Linux基本权限
    05 Linux用户管理
    04 Linux文件编辑
  • 原文地址:https://www.cnblogs.com/guoxf/p/7227222.html
Copyright © 2011-2022 走看看