VI高级命令集锦Word文档格式.docx

上传人:b****4 文档编号:16566976 上传时间:2022-11-24 格式:DOCX 页数:13 大小:20.96KB
下载 相关 举报
VI高级命令集锦Word文档格式.docx_第1页
第1页 / 共13页
VI高级命令集锦Word文档格式.docx_第2页
第2页 / 共13页
VI高级命令集锦Word文档格式.docx_第3页
第3页 / 共13页
VI高级命令集锦Word文档格式.docx_第4页
第4页 / 共13页
VI高级命令集锦Word文档格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

VI高级命令集锦Word文档格式.docx

《VI高级命令集锦Word文档格式.docx》由会员分享,可在线阅读,更多相关《VI高级命令集锦Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。

VI高级命令集锦Word文档格式.docx

,

  当你在文见里插入usa时

  UnitedStatesofAmerica就蹦出来了

  9.

mapkeysnew_seq

  定义你当前键盘命令

  10.

set[all]

  viorex的编辑状态

  如显示每行:

setnu

  11.

  在命令状态下,nyy表示拷贝从光标行起的下n行内容,p表示paste,可刚复制的内容粘贴在光标处的

  下面。

  12.

  单个字符替换用r,覆盖多个字符用R,用多个字符替换一个字符用s,整行替换用S

  13.

%s/old_word/new_word/g

  这个指令是于在整个文件中替换特定字符串

  14.光标控制

  k:

上移nk上移n行

  j:

下移nj下移n行

  将光标移到第n行,按下mk

  将光标移到第m行,按下"

ay'

k

  即将第n到m的行存到a寄存器,以此类推,b,c........寄存器等

  这样就可以将你常用的需要复用的内容粘贴到不同的寄存器中以备用

  想粘贴到某处,直接将光标移到某地,按下‘ap即可,以此类推,b,c........寄存器等

  在当前屏幕中

  H跳到第一行

  M跳到中间一行

  L跳到最后一行

  15.

  表8-2删除命令

  删除命令操作

  dl删除当前字符(与x命令功能相同)

  d0删除到某一行的开始位置

  d^删除到某一行的第一个字符位置(不包括空格或TAB字符)

  dw删除到某个单词的结尾位置

  d3w删除到第三个单词的结尾位置

  db删除到某个单词的开始位置

  dW删除到某个以空格作为分隔符的单词的结尾位置

  dB删除到某个以空格作为分隔符的单词的开始位置

  d7B删除到前面7个以空格作为分隔符的单词的开始位置

  d)删除到某个语句的结尾位置

  d4)删除到第四个语句的结尾位置

  d(删除到某个语句的开始位置

  d}删除到某个段落的结尾位置

  d{删除到某个段落的开始位置

  d7{删除到当前段落起始位置之前的第7个段落位置

  dd删除当前行

  d/text删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容

  dfc删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容

  dtc删除当前行直到下一个字符“c”所出现位置之间的内容

  D删除到某一行的结尾

  d$删除到某一行的结尾

  5dd删除从当前行所开始的5行内容

  dL删除直到屏幕上最后一行的内容

  dH删除直到屏幕上第一行的内容

  dG删除直到工作缓存区结尾的内容

  d1G删除直到工作缓存区开始的内容

  修改命令操作

  cl更改当前字符

  cw修改到某个单词的结尾位置

  c3w修改到第三个单词的结尾位置

  cb修改到某个单词的开始位置

  cW修改到某个以空格作为分隔符的单词的结尾位置

  cB修改到某个以空格作为分隔符的单词的开始位置

  c7B修改到前面7个以空格作为分隔符的单词的开始位置

  c0修改到某行的结尾位置

  c)修改到某个语句的结尾位置

  c4)修改到第四个语句的结尾位置

  c(修改到某个语句的开始位置

  c}修改到某个段落的结尾位置

  c{修改到某个段落的开始位置

  c7{修改到当前段落起始位置之前的第7个段落位置

  ctc修改当前行直到下一个字符c所出现位置之间的内容

  C修改到某一行的结尾

  cc修改当前行

  5cc修改从当前行所开始的5行内容

  .重复上一次修改!

  表8-4替换命令

  替换命令操作

  s将当前字符替换为一个或多个字符

  S将当前行替换为一个或多个字符

  5s将从当前字符开始的5个字符替换为一个或多个字符

  vi替换使用规则:

g/s1/s/s2/s3/g

  第一个g表示对每一个包括s1的行都进行替换,第二个g表示对每一行包括s1的行所有的s2都用s3替换

  s表示替换,s2是要被替换的字符串,他可以和s1相同(如果相同的话用//代替),s3是替换字符串

  16.

  fx

  往右移动到x字符上

  Fx

  往左移动到x字符上

  tx

  往右移动到x字符前

  Tx

  往左移动到x字符后

  (注意:

以上四个命令中,其中x是键入的字符)

  ;

  分号,配合f和t使用,重复一次

  ,

  逗号,配合f和t使用,反方向重复一次

  17.vi环境选项Solarisksh

  noautoindentnomodelinesnoshowmode

  autoprintnonumbernoslowopen

  noautowritenonovicetabstop=8

  nobeautifynooptimizetaglength=0

  directory=/var/tmpparagraphs=IPLPPPQPPLIpplpipnpbtags=tags/usr/lib/tags

  noedcompatibleprompttagstack

  noerrorbellsnoreadonlyterm=vt100

  noexrcredrawnoterse

  flashremaptimeout

  hardtabs=8report=5ttytype=vt100

  noignorecasescroll=11warn

  nolispsections=NHSHHHUuhsh+cwindow=23

  nolistshell=/bin/kshwrapscan

  magicshiftwidth=8wrapmargin=0

  mesgnoshowmatchnowriteany

  ForC-Shell:

  setenvEXINIT"

setnu"

  ForBourneorKornShell:

  EXINIT="

;

exportEXINIT

  ForKornShellOnly(alternatemethod):

  typeset-xEXINIT="

  在.profile里设置vi的环境选项,以上均测试过

  18.标记文本

    mchar  用字母char标记当前光标的位置

    `char  移至char所标记处

    '

char  移至char标记所在行的开头处

    "

    移至当前行上一次所在位置(在光标移动之后)――一个双引号

'

    移至当前行上第一次所在位置的行的开头处(在光标移动之后)――两个单引号

  19.

  同时vi多个文件时,CTRL-SHIFT-6回到上一个文件,在本次vi的文件和上次vi的文件之间切换。

  但是我发现一个BUG:

在用CTRL-SHIFT-6切换到上一个文件后,用:

args查看多文件vi状态时,

  屏幕底部仍然显示目前vi的是刚才的文件。

  (在HP-UX,Solaris,AIX上通过)

  也可以使用:

e#

  进行切换

  20.

  sco下VI要在文本前同样的字符加用

  %s/^/要加的内容/g要在文本后同样的字符加

  %s/$/要加的内容/g

  21.

  如何去掉文本中的^M硬回车?

不必用binary传回去再ascii传回来的方式,用shell或者unix语句实现。

  catfilename|tr-d'

\015'

>

newfile

  不同的unix系统还存在一些其他不同的命令,如:

doscp

  sed也可以实现这个功能.

  dos2unixfilenamefilename2

  反之

  unix2dosfilenamefilename2

  在vi中用:

$s/^M//g

  ^是crtl-Vcrtl-M

  22.如何在“unix命令行”下将一个文件的某字符串用另一个串换掉

  sed'

s/string1/string2/gp'

file1>

file2

  23.将/etc/hosts下所有的地址都ping2次

  1#/usr/bin/sh

  2#grad/etc/hostsandpingeachaddress

  3cat/etc/hosts|grep-v'

^#'

|whilereadLINE

  4do

  5ADDR=`awk'

{print$1}'

`

  6forMACHINEin$ADDR

  7do

  8ping$MACHINE-n2

  9done

  10done

光标移动命令

hjkl将光标分别向左、下、上、右移动一个字符

0(零)将光标移到当前行的行首

^(脱字符)同0一样将光标移到当前行的行首

$将光标移到当前行的行末

##G将光标移到G前面的数字指定的行。

例如,42G将光标移到文件的第42行

G将光标移到文件的最后一行

w将光标向前移到下一个单词的首字母

e将光标向前移到下一个单词的最后一个字母

b将光标向后移到上一个单词首字母

-将光标定位到上一行的行首

+将光标定位到下一行的行首

12|将光标定位到当前行的第12列

L将光标定位到屏幕的最下面一行

M将光标定位到屏幕中间的一行

H将光标定位到屏幕的最上面一行

两个单引号将光标移到它的先前的位置

光标定位命令(上下文的)

fb将光标向前移到当前行上的下一个字母b(或者其他的任意指定的字符)

Fb将光标向后移到当前行上的上一个字母b(或指定的字符)

t#将光标移到当前行上字符#的第1个实例的右侧。

例如,命令tM将光标移到当前行上第1个M的右侧

T#在当前行上向左移动光标,将它移到字符#的第1个实例的前一字符

/word将光标向前移到单词word的下一个实例

?

word将光标向后移到单词word的上一个实例

n将光标移到前面命令/word或?

word中指定模式的下一个实例

1.命令状态:

是vi的初始状态及一般状态。

在该状态下输入的内容均视为命令,调用命令后,若要返回初始状态,则需按〈Esc〉键。

注意:

命令状态下,其字母大小写在vi中是意义不同的的命令

(小窍门:

若不知道当前是在什么状态,可按几次〈Esc〉键,以确保处于命令状态。

2.插入状态:

在命令状态调用插入命令后,进入插入状态,在此状态下输入的内容被视为文件内容,按〈Esc〉键回到命令状态。

3.最后一行状态:

用于存储文件、退出编辑、在vi中执行shell命令。

在命令状态下输入引号中列出的任意一键均可进入该状态:

“:

/?

”。

若要转换到命令状态,按Enter键即可。

在vi中执行shell命令时,在命令前需加字符“!

例:

1最后一行状态下,执行shell的列表命令

!

ls

file1file2.ftest.c…(当前目录中的文件表)

……

PressRETURNorEntercommandtocontinue

插入命令(注意字母大小写)

i在光标前插入文本

I在此行开始插入文本

a在光标后插入文本

A在此行未插入文本

o在当前行下面加一空行并进入输入方式

O在当前行上面加一空行并进入输入方式

删除、复制、移动命令

x删除当前字符

d$删除当前行中从光标往后的所有字符

d0删除当前行中从光标往前的所有字符

dd删除当前行

ndd删除光标所在位置之下的n行

n1,n2d删除n1行到n2行(在最后一行状态)

yy将当前行复制到缓冲区

nyy将光标所在位置之下的n行文本复制到缓冲区

p将上一次删除或复制的文本复制到光标的下方

P将上一次删除或复制的文本复制到光标的上方

说明:

移动正文时需先用删除命令将要移动的正文删除,然后使用复制命令

光标移动命令

键盘的←↑→↓键分别是左移,上移,右移,下移

O(数字),$移至当前行首和行尾

<

shift>

+h移动光标至当前窗口的起点

+l移动光标至当前窗口的末尾

+g(或G)移动光标至文件的末尾

ctrl>

+f前翻一页

+b后翻一页

nG移动光标至第n行

+g显示当前行号

J将当前行与下一行连接

u取消前一个命令

查找字符

/要查找的字符串(回车):

查找光标位置之后的字符串

要查找的字符串(回车):

查找光标位置之前的字符串

n继续向同一方向查找匹配的字符串

N继续进行反方向查找匹配的字符串

*在查找的字符串中可匹配任意字符

在查找的字符串中可匹配一个字符

修改字符

r只替换光标位置上的一个字符

R用重写的方法替换原来的字符串,结束替换按<

Esc>

[n1,n2]s/旧字符串/新字符串/g<

Enter>

用新文本替换n1~n2行内的所有旧字符串,n1,n2缺省时只修改当前行

g/旧文本/s//新文本/g<

用新文本替换缓冲区内找到的所有旧文本

.重复上一次修改

u取消上一次修改

U将当前行恢复到修改前的状态

常用功能选项的设置

功能选项将改变vi的显示环境,用户可在文件$HOME/.exrc中设置自己的选项,如没有此文件,则使用缺省设置。

set命令在vi的最后一行命令状态使用。

set显示与缺省不同的设置

setall显示所有设置

setai/noai自动/不自动缩进

setnu/nonu显示/不显示行号

setlist/nolist显示/不显示不可打印字符

setshowmode/noshowmode显示/不显示当前操作模式

setts=4设置<

Tab>

键为4个空格

setic/noic忽略/不忽略大小写

文件的读写和退出

vi中文件的读写命令均在最后一行状态命令实现

w将缓冲区内容写入原文件

wfile2将缓冲区内容写入文件file2

w>

>

file2将缓冲区内容附加到文件file2的后面

q退出vi

q!

强行退出vi,不改写文件

rfile2将file2中的内容读入到缓冲区当前行后

wq存盘退出

shell执行shell命令

退出shell命令

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 信息与通信

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1