您的位置:首页 > 运维架构 > Shell

vi介绍编 (3) ex命令

2005-04-04 18:39 337 查看
◎EX COMMANDS

      以下的命令属於ex编辑器所用.也就是说要在vi执行时需要先换成ex mode (:)

      vi/ex mode切换 於ex mode输入vi 即可.

      

      ! shell command   执行shell命令

            "           解

      

          # 数字        显示选择的行数,每行前面标示出行号.

       * buffer_name    执行该buffer

         [行数]a!       在该行的下一行,产生输入的文字. 行数从 0 开始.

                        :1a!     (在第二(1+1=2)行产生输入文字)

                        接着会出现如下的讯息

                        Entering ex input mode

                        接着您就可以输入文字 按 ctrl+c 结束

         [行数]c!       该行用输入的文字取代. 行数从1开始.

                        :1c!     (在第一行产生取代文字) 接着会出现如下的讯息

                        Entering ex input mode

                        接着您就可以输入文字取代 按 ctrl+c 结束

       

         [行数围]d    将处於该行数围内的文章删除.

                        1,3d     (表示从第1行到第3行删除; ,表示到的意思)

       

    [Ee]dit! file_name

    [Ee]x! file_name    编辑不同的档案,此为编辑file_name,[]表示其中之一。

                        也可以用 :e file_name 或 :edit file_name 编辑不同档案

    exu[sage] [ex命令]  显示该ex命令的使用方式。

                      显示edit的使用方式  :exu edit   显示结果如下

                       +-+-+-+-+-+-+-+-+-+

                       command begin editing another file

                           Usage:[Ee][dit][!] [+cmd] [file]

                       Press any key to continue [: to enter more ex commands]:

                       分别显示出 简易叙述 使用语法 结束或继续

       

    f[ile] [file_name]  显示档案讯息 ( 与vi命令中的ctrl+g类似 )

    [range] g[lobal] /样式/ [ex命令]  将符合条件的样式加以用ex命令处理

                                      可以设定围,若没有围设定表示全部。

                                      若不加命令只会显示符合样式的内容。

                                      如 :g/BSD/ (显示有BSD的行列)

                         

    [range] v[lobal] /样式/ [ex命令]  将不符合条件的样式加以用ex命令处理

                                      可以设定围,若没有围设定表示全部。

                                      若不加命令只会显示不符合样式的内容。

                                      如 :g/BSD/ (显示没有BSD的行列)

            he[lp]      显示求助讯息

       [行数]i[nsert]!  将所输入的文字内容,插入自订的行数.原行数顺延

       [行数]j[oin]!    将该指定行与下一行合。

       

       [行数]l[ist]     显示该指定行(围)。

       

       [围]m[ove] line  将某围的内容搬移到某自订行之後。

                          若将3-5行搬移到第6行之後,指令为:3,5m6 

       

       mk[exrc][!] file_name  将缩写、编辑参数及map写到file_name

       

       [Nn][ext][!] [file ...]  继续编辑某一档案。

       

       pre[serve]        以ex -r 能够恢复的形式储存档案。

    

       [Pp]rev[ious][!]  编辑先前的档案。

       [围] p[rint]    显示围内容

       [行数] pu[t]      将buffer中的内容在特定行贴上。

          q[uit][!]      强制离开

       rec[over] file    回复先前用pre储存的档案,等同於vi -r filename

                         :档案放在/var/tmp/vi.recover资料夹下

          se[t]          设定环境变数,後接想要设定的变数(值)

          se[t] [all]    显示全部环境变数

          sh[ell]        跳脱编辑,回到shell下,可执行其他动作。

                         用exit离开shell。

       so[urce] file     从档案中读取命令

       [range] s[ubstitute] [/被取代的样式/取代样式/]

                         在某围内将符合的样式用取代样式取代。

      

       su[spend][!]      暂停程式进行,回到shell,用fg回复

           st[op][!]     同su!

           ve[rsion]    显示vi编辑器的版本。

           vi[sual]     进入vi (ex mode用)

       viu[sage] [command]  显示vi command的语法,若没有特别指定,则显示全部。

       [围] w[rite][!] [>>] [file_name]  将围内容附加到档案file_name。

       [围] w[rite][!] [file_name]  将围内容另存新档file_name。

       [围] wq[!] [>>] [file_name]  将围的内容附加到档案file_name并离开。

       

       x[!]  强制存档

  ◎参考资料: man vi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  file buffer shell command cmd c