如何在linux中vi使用方法 在 linux 系统中,“vi”命令的使用方法是什么?

linux\u4e2dvi\u7f16\u8f91\u5668\u600e\u6837\u4f7f\u7528

\u5de5\u5177\uff1a
Linux
\u65b9\u6cd5\uff1a
1\u3001\u9996\u5148\u8fdb\u5165Linux\u7684\u547d\u4ee4\u884c\u754c\u9762.\u5728\u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u7528\u4e8e\u6d4b\u8bd5\u7684\u6587\u672c\u6587\u4ef6(touch filename).\u8fd9\u91cc\u5c31\u65b0\u5efa\u4e86\u4e00\u4e2atest12\u6587\u672c\u6587\u4ef6.\u5f53\u7136\u8fd9\u4e2a\u540d\u5b57\u662f\u53ef\u4ee5\u968f\u4fbf\u53d6\u5f97.



2\u3001\u7528"vi test12"\u547d\u4ee4\u8fdb\u5165vi\u547d\u4ee4\u884c\u6a21\u5f0f(vi filename). \u5982\u679c\u8981\u60f3\u7f16\u8f91\u6587\u672c\u6587\u4ef6.\u5fc5\u987b\u8981\u8f6c\u6362\u5230\u63d2\u5165\u6a21\u5f0f\u4e0b,\u4e5f\u5c31\u662f\u6309\u4e00\u4e0b\u952e\u76d8\u4e0a\u7684"i"\u5c31\u53ef\u4ee5\u4e86.\u8fd9\u6837\u5c31\u53ef\u4ee5\u7f16\u8f91\u6587\u672c,\u5220\u9664\u6587\u672c\u4e2d\u7684\u5185\u5bb9.\u6309\u952e\u76d8\u4e0a\u7684\u4e0a\u4e0b\u5de6\u53f3\u952e.\u6765\u56de\u79fb\u52a8\u4e86.\u5c31\u8ddf\u5728windows \u7cfb\u7edf\u4e2d\u7f16\u8f91\u6587\u672c\u4e00\u6837.


3\u3001\u8f93\u5165\u8981\u8f93\u5165\u7684\u5185\u5bb9.\u5982\u679c\u60f3\u9000\u51fa\u6587\u672c\u7f16\u8f91\u6a21\u5f0f.\u5e76\u4e14\u4fdd\u5b58\u521a\u521a\u7f16\u8f91\u7684\u6587\u672c.\u9996\u5148\u70b9\u51fb\u4e00\u4e0b\u952e\u76d8\u4e0a\u7684"ESC",\u7136\u540e\u8f93\u5165":wq!"\u8fd9\u6837\u5c31\u5c06\u6587\u672c\u4fdd\u5b58\u4e86.\u7136\u540e\u63a8\u51fa\u4e86vi\u7f16\u8f91\u5668.\u5982\u679c\u4e0d\u60f3\u4fdd\u5b58\u5c31\u6309\u4e00\u4e0b\u952e\u76d8\u4e0a\u7684"ESC",\u8f93\u5165":q!".\u5982\u679c\u4e0d\u786e\u5b9a\u662f\u5426\u6210\u529f.\u53ef\u4ee5\u901a\u8fc7"cat filename" \u547d\u4ee4\u6765\u67e5\u770b.



4\u3001\u5149\u6807\u7684\u79fb\u52a8\u9664\u4e86\u952e\u76d8\u4e0a\u7684\u4e0a\u4e0b\u5de6\u53f3\u952e.\u4e5f\u53ef\u4ee5\u662f\u5c0f\u5199\u6a21\u5f0f\u4e0b,\u6309\u952e\u76d8\u4e0a\u7684"h,j,k,l",
"ctrl+b":\u5c4f\u5e55\u5f80\u540e\u79fb\u52a8\u4e00\u9875
"ctrl+f":\u5c4f\u5e55\u5f80\u524d\u79fb\u52a8\u4e00\u9875
"ctrl+u":\u5c4f\u5e55\u5f80\u540e\u79fb\u52a8\u534a\u9875
"ctrl+d":\u5c4f\u5e55\u5f80\u524d\u79fb\u52a8\u534a\u9875
\u8f93\u5165\u4efb\u4f55\u4e00\u4e2a\u6574\u6570,\u7136\u540e\u8f93\u5165"shift+G" \u5c31\u53ef\u4ee5\u5230\u8fd9\u4e00\u9875\u7684\u5f00\u5934\u4e86.
\u6309\u952e\u76d8\u4e0a\u7684\u5927\u5199"G"\u79fb\u52a8\u5230\u6587\u7ae0\u7684\u6700\u540e.
\u6309"$"\u7b26\u53f7\u5c06\u5149\u6807\u79fb\u52a8\u5230\u884c\u5c3e
"^"\u5c06\u5149\u6807\u79fb\u5230\u884c\u5934
"w":\u5c06\u5149\u6807\u79fb\u5230\u4e0b\u4e00\u884c\u5934
"b":\u8ddf"w"\u76f8\u53cd.\u79fb\u5230\u4e0a\u4e00\u884c\u884c\u5934
"e":\u5c06\u5149\u6807\u79fb\u5230\u4e0b\u4e00\u884c\u5c3e.
\u5982\u679c\u60f3\u8ba9\u6587\u672c\u663e\u793a\u884c\u53f7.\u5c31\u5728\u547d\u4ee4\u884c \u6a21\u5f0f\u4e0b,\u5728\u6587\u672c\u6700\u540e\u8f93\u5165":set nu"\u547d\u4ee4.\u5c31\u53ef\u4ee5\u4e86


5\u3001\u590d\u5236 \u3000\u3000\u300cyw\u300d\uff1a\u5c06\u5149\u6807\u6240\u5728\u4e4b\u5904\u5230\u5b57\u5c3e\u7684\u5b57\u7b26\u590d\u5236\u5230\u7f13\u51b2\u533a\u4e2d\u3002 \u3000\u3000\u300cyy\u300d\uff1a\u590d\u5236\u5149\u6807\u6240\u5728\u884c\u5230\u7f13\u51b2\u533a\u3002 \u3000\u3000\u300c#yy\u300d\uff1a\u4f8b\u5982\uff0c\u300c6yy\u300d\u8868\u793a\u62f7\u8d1d\u4ece\u5149\u6807\u6240\u5728\u7684\u8be5\u884c"\u5f80\u4e0b\u6570"6\u884c\u6587\u5b57\u3002 \u3000\u3000\u300cp\u300d\uff1a\u5c06\u7f13\u51b2\u533a\u5185\u7684\u5b57\u7b26\u8d34\u5230\u5149\u6807\u6240\u5728\u4f4d\u7f6e\u3002\u6ce8\u610f\uff1a\u6240\u6709\u4e0e"y"\u6709\u5173\u7684\u590d\u5236\u547d\u4ee4\u90fd\u5fc5\u987b\u4e0e"p"\u914d\u5408\u624d\u80fd\u5b8c\u6210\u590d\u5236\u4e0e\u7c98\u8d34\u529f\u80fd\u3002
6\u3001\u67e5\u627e
\u7528"/"\u52a0\u4e0a\u8981\u67e5\u627e\u7684\u5185\u5bb9.\u4f8b\u5982"/hello"\u6216\u8005\u662f"?hello"\u4e5f\u662f\u53ef\u4ee5\u7684.


7\u3001\u66ff\u6362 \u3000\u3000\u300cr\u300d\uff1a\u66ff\u6362\u5149\u6807\u6240\u5728\u5904\u7684\u5b57\u7b26\u3002 ,\u6309\u4e00\u4e0b"r"\u7136\u540e\u8f93\u5165\u8981\u5373\u53ef.\u3000\u3000\u300cR\u300d\uff1a\u66ff\u6362\u5149\u6807\u6240\u5230\u4e4b\u5904\u7684\u5b57\u7b26\uff0c\u76f4\u5230\u6309\u4e0b\u300cESC\u300d\u952e\u4e3a\u6b62\u3002
8\u3001\u6062\u590d\u4e0a\u4e00\u6b21\u64cd\u4f5c \u3000\u3000\u300cu\u300d\uff1a\u5982\u679c\u8bef\u6267\u884c\u4e00\u4e2a\u547d\u4ee4\uff0c\u53ef\u4ee5\u9a6c\u4e0a\u6309\u4e0b\u300cu\u300d\uff0c\u56de\u5230\u4e0a\u4e00\u4e2a\u64cd\u4f5c\u3002\u6309\u591a\u6b21"u"\u53ef\u4ee5\u6267\u884c\u591a\u6b21\u6062\u590d.\u5c31\u76f8\u5f53\u4e8e"CTRL +Z"\u7684\u64cd\u4f5c.

\u4e00\u822c\u6a21\u5f0f\u5e38\u7528\u64cd\u4f5c
\u3010h(\u6216\u5411\u5de6\u65b9\u5411\u952e)\u3011 \u5149\u6807\u5de6\u79fb\u4e00\u4e2a\u5b57\u7b26
\u3010j(\u6216\u5411\u4e0b\u65b9\u5411\u952e)\u3011 \u5149\u6807\u4e0b\u79fb\u4e00\u4e2a\u5b57\u7b26
\u3010k(\u6216\u5411\u4e0a\u65b9\u5411\u952e)\u3011 \u5149\u6807\u4e0a\u79fb\u4e00\u4e2a\u5b57\u7b26
\u3010l(\u6216\u5411\u53f3\u65b9\u5411\u952e)\u3011 \u5149\u6807\u53f3\u79fb\u4e00\u4e2a\u5b57\u7b26
\u3010[Ctrl] + f\u3011 \u5c4f\u5e55\u5411\u4e0b\u79fb\u52a8\u4e00\u9875\uff08\u76f8\u5f53\u4e8ePage Down\u952e\uff09
\u3010[Ctrl] + b\u3011 \u5c4f\u5e55\u5411\u4e0a\u79fb\u52a8\u4e00\u9875\uff08\u76f8\u5f53\u4e8ePage Up\u952e\uff09
\u3010[0]\u6216[Home]\u3011 \u5149\u6807\u79fb\u52a8\u5230\u5f53\u524d\u884c\u7684\u6700\u524d\u9762
\u3010[$]\u6216[End]\u3011 \u5149\u6807\u79fb\u52a8\u5230\u5f53\u524d\u884c\u7684\u672b\u5c3e
\u3010G\u3011 \u5149\u6807\u79fb\u52a8\u5230\u6587\u4ef6\u7684\u6700\u540e\u4e00\u884c\uff08\u7b2c\u4e00\u4e2a\u5b57\u7b26\u5904\uff09
\u3010nG\u3011 n\u4e3a\u6570\u5b57\uff08\u4e0b\u540c\uff09\uff0c\u79fb\u52a8\u5230\u5f53\u524d\u6587\u4ef6\u4e2d\u7b2cn\u884c
\u3010gg\u3011 \u79fb\u52a8\u5230\u6587\u4ef6\u7684\u7b2c\u4e00\u884c\uff0c\u76f8\u5f53\u4e8e"1G"
\u3010n[Enter]\u3011 \u5149\u6807\u5411\u4e0b\u79fb\u52a8n\u884c
\u3010\u5ef6\u5c55\u9605\u8bfb\u3011
\uff08\u4e00\uff09vi/vim\u662f\u4ec0\u4e48\uff1f
Linux\u4e16\u754c\u51e0\u4e4e\u6240\u6709\u7684\u914d\u7f6e\u6587\u4ef6\u90fd\u662f\u4ee5\u7eaf\u6587\u672c\u5f62\u5f0f\u5b58\u5728\u7684\uff0c\u800c\u5728\u6240\u6709\u7684Linux\u53d1\u884c\u7248\u7cfb\u7edf\u4e0a\u90fd\u6709vi\u7f16\u8f91\u5668\uff0c\u56e0\u6b64\u5229\u7528\u7b80\u5355\u7684\u6587\u5b57\u7f16\u8f91\u8f6f\u4ef6\u5c31\u80fd\u591f\u8f7b\u677e\u5730\u4fee\u6539\u7cfb\u7edf\u7684\u5404\u79cd\u914d\u7f6e\u4e86\uff0c\u975e\u5e38\u65b9\u4fbf\u3002vi\u5c31\u662f\u4e00\u79cd\u529f\u80fd\u5f3a\u5927\u7684\u6587\u672c\u7f16\u8f91\u5668\uff0c\u800cvim\u5219\u662f\u9ad8\u7ea7\u7248\u7684vi\uff0c\u4e0d\u4f46\u53ef\u4ee5\u7528\u4e0d\u540c\u989c\u8272\u663e\u793a\u6587\u5b57\u5185\u5bb9\uff0c\u8fd8\u80fd\u8fdb\u884c\u8bf8\u5982shell\u811a\u672c\u3001C\u8bed\u8a00\u7a0b\u5e8f\u7f16\u8f91\u7b49\u529f\u80fd\uff0c\u53ef\u4ee5\u4f5c\u4e3a\u7a0b\u5e8f\u7f16\u8f91\u5668\u3002
\uff08\u4e8c\uff09\u4e3a\u4ec0\u4e48\u8981\u5b66\u4e60vi/vim\uff1f
\u9996\u5148\u6240\u6709\u7684Linux\u53d1\u884c\u7248\u7cfb\u7edf\u4e0a\u90fd\u4f1a\u9ed8\u8ba4\u5185\u7f6evi\u7f16\u8f91\u5668\uff0c\u800c\u4e0d\u4e00\u5b9a\u5e26\u6709\u5176\u4ed6\u6587\u672c\u7f16\u8f91\u5668\uff0c\u975e\u5e38\u901a\u7528\uff1b\u5176\u6b21\uff0c\u5f88\u591a\u8f6f\u4ef6\u7684\u7f16\u8f91\u63a5\u53e3\u90fd\u4f1a\u9ed8\u8ba4\u8c03\u7528vi\uff1b\u7b2c\u4e09\uff0cvi\u5177\u6709\u7a0b\u5e8f\u7f16\u8f91\u7684\u80fd\u529b\uff1b\u6700\u540e\uff0cvi\u7a0b\u5e8f\u7b80\u5355\uff0c\u7f16\u8f91\u901f\u5ea6\u76f8\u5f53\u5feb\u901f\u3002
\uff08\u4e09\uff09vim\u914d\u7f6e\u6587\u4ef6
vim\u7684\u914d\u7f6e\u6587\u4ef6\u4e3a/etc/vimrc\uff0c\u4f46\u4e00\u822c\u4e0d\u5efa\u8bae\u76f4\u63a5\u4fee\u6539\u8fd9\u4e2a\u6587\u4ef6\uff0c\u800c\u662f\u5728\u7528\u6237\u6839\u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u9690\u85cf\u6587\u4ef6\uff1a
vim ~/.vimrc
\u7136\u540e\u7f16\u8f91\u8fd9\u4e2a\u6587\u4ef6\uff0c\u5e38\u7528\u7684\u914d\u7f6e\u5982\u4e0b\uff1a
bash
"\u53cc\u5f15\u53f7\u540e\u9762\u7684\u5185\u5bb9\u4e3a\u6ce8\u91ca
set nu "\u663e\u793a\u884c\u53f7
set hlsearch "\u67e5\u627e\u7684\u5b57\u7b26\u4e32\u53cd\u767d\u663e\u793a
set backspace=2 "\u53ef\u968f\u65f6\u7528\u9000\u683c\u952e\u8fdb\u884c\u5220\u9664
set autoindent "\u81ea\u52a8\u7f29\u6392
set ruler "\u5728\u6700\u4e0b\u65b9\u4e00\u884c\u663e\u793a\u72b6\u6001
set showmode "\u5728\u5de6\u4e0b\u89d2\u663e\u793a\u6a21\u5f0f
set bg=dark "\u663e\u793a\u4e0d\u540c\u7684\u5e95\u8272\uff0c\u8fd8\u53ef\u4ee5\u4e3alight
syntax on "\u8bed\u6cd5\u68c0\u9a8c\uff0c\u989c\u8272\u663e\u793a
\u53c2\u8003\u8d44\u6599
$Linux vi/vim\u7f16\u8f91\u5668\u5e38\u7528\u547d\u4ee4\u4e0e\u7528\u6cd5\u603b\u7ed3.\u952e\u76d8\u4e0a\u7684\u624b\u827a\u4eba[\u5f15\u7528\u65f6\u95f42018-3-7]

vi 的工作模式
Vi 在初始启动后首先进入编辑模式,这时用户可以利用一些预先定义的按键来移动光标、删除文字、 复制或粘贴文字等。这些按键均是普通的字符,例如 l 是向右移动光标,相当于向右箭头键,k 是 向下移动光标,相当于向下箭头键。在编辑模式下,用户还可以利用一些特殊按键选定文字,然后 再进行删除、或复制等操作。
当用户在编辑模式下键入 i, a, o 等命令之后,可进入插入模式;键入 : 可进入命名模式。 在插入模式下,用户随后输入的,除 Esc 之外的任何字符均将被看成是插入到编辑缓冲区中 的字符。按 Esc 之后,从插入模式切换到编辑模式。
在命令模式,Vi 将把光标挪到屏幕的最下方,并在第一个字符的位置显示一个 :(冒号)。这时, 用户就可以键入一些命令。这些命令可用来保存文件、读取文件内容、执行 Shell 命令、设置 Vi 参数、以正则表达式的方式查找字符串或替换字符串等。
编辑模式
1. 移动光标
要对正文内容进行修改,首先必须把光标移动到指定位置。移动光标的最简单的方式是按键盘的上、下、左、

右箭头键。除了这种最原始的方法之外,用户还可以利用 vi 提供的众多字符组合键,在正文中移动光标,迅

速到达指定的行或列,实现定位。例如:

k、j、h、l 功能分别等同于上、下、左、右箭头键

Ctrl+b 在文件中向上移动一页(相当于 PageUp 键)

Ctrl+f 在文件中向下移动一页(相当于 PageDown 键)

H 将光标移到屏幕的最上行(Highest)

nH 将光标移到屏幕的第 n 行

2H 将光标移到屏幕的第 2 行

M 将光标移到屏幕的中间(Middle)

L 将光标移到屏幕的最下行(Lowest)

nL 将光标移到屏幕的倒数第 n 行

3L 将光标移到屏幕的倒数第 3 行

w 在指定行内右移光标,到下一个字的开头

e 在指定行内右移光标,到一个字的末尾

b 在指定行内左移光标,到前一个字的开头

0 数字0,左移光标,到本行的开头

$ 右移光标,到本行的末尾

^ 移动光标,到本行的第一个非空字符

2. 替换和删除
将光标定位于文件内指定位置后,可以用其他字符来替换光标所指向的字符,或从当前光标位置删除一个或多

个字符。例如:

rc 用 c 替换光标所指向的当前字符

nrc 用 c 替换光标所指向的前 n 个字符

5rc 用 c 替换光标所指向的前 5 个字符

x 删除光标所指向的当前字符

nx 删除光标所指向的前 n 个字符

3x 删除光标所指向的前 3 个字符

dw 删除光标右侧的字

ndw 删除光标右侧的 n 个字

3dw 删除光标右侧的 3 个字

db 删除光标左侧的字

ndb 删除光标左侧的 n 个字

5db 删除光标左侧的 5 个字

dd 删除光标所在行,并去除空隙

ndd 删除 n 行内容,并去除空隙

3dd 删除 3 行内容,并去除空隙

3. 粘贴和复制
从正文中删除的内容(如字符、字或行)并没有真正丢失,而是被剪切并复制到了一个内存缓冲区中。用户可

将其粘贴到正文中的指定位置。完成这一操作的命令是:

p 小写字母 p,将缓冲区的内容粘贴到光标的后面

P 大写字母 P,将缓冲区的内容粘贴到光标的前面

如果缓冲区的内容是字符或字,直接粘贴在光标的前面或后面;如果缓冲区的内容为整行正文,则粘贴在当前

光标所在行的上一行或下一行。

注意上述两个命令中字母的大小写。vi 编辑器经常以一对大、小写字母(如 p 和 P)来提供一对相似的功能

。通常,小写命令在光标的后面进行操作,大写命令在光标的前面进行操作。

有时需要复制一段正文到新位置,同时保留原有位置的内容。这种情况下,首先应当把指定内容复制(而不是

剪切)到内存缓冲区。完成这一操作的命令是:

yy 复制当前行到内存缓冲区

nyy 复制 n 行内容到内存缓冲区

5yy 复制 5 行内容到内存缓冲区

4. 搜索字符串
和许多先进的编辑器一样,vi 提供了强大的字符串搜索功能。要查找文件中指定字或短语出现的位置,可以

用 vi 直接进行搜索,而不必以手工方式进行。搜索方法是:键入字符 / ,后面跟以要搜索的字符串,然后

按回车键。编辑程序执行正向搜索(即朝文件末尾方向),并在找到指定字符串后,将光标停到该字符串的

开头;键入 n 命令可以继续执行搜索,找出这一字符串下次出现的位置。用字符 ? 取代 / ,可以实现反向

搜索(朝文件开头方向)。例如:

/str1 正向搜索字符串 str1

n 继续搜索,找出 str1 字符串下次出现的位置

?str2 反向搜索字符串 str2

无论搜索方向如何,当到达文件末尾或开头时,搜索工作会循环到文件的另一端并继续执行。

5. 撤销和重复
在编辑文档的过程中,为消除某个错误的编辑命令造成的后果,可以用撤消命令。另外,如果用户希望在新

的光标位置重复前面执行过的编辑命令,可用重复命令。

u 撤消前一条命令的结果

. 重复最后一条修改正文的命令

6. 文本选中
vi 可进入到一种成为 Visual 的模式,在该模式下,用户可以用光标移动命令可视地选择文本,然后再 执行其他编辑操作,例如删除、复制等。 v 字符选中命令 V 行选中命令
插入模式
1. 进入插入模式
在编辑模式下正确定位光标之后,可用以下命令切换到插入模式:

i 在光标左侧输入正文

a 在光标右侧输入正文

o 在光标所在行的下一行增添新行

O 在光标所在行的上一行增添新行

I 在光标所在行的开头输入正文

A 在光标所在行的末尾输入正文

上面介绍了几种切换到插入模式的简单方法。另外还有一些命令,它们允许在进入插入模式之前首先删去一段

正文,从而实现正文的替换。这些命令包括:

s 用输入的正文替换光标所指向的字符

ns 用输入的正文替换光标右侧 n 个字符

cw 用输入的正文替换光标右侧的字

ncw 用输入的正文替换光标右侧的 n 个字

cb 用输入的正文替换光标左侧的字

ncb 用输入的正文替换光标左侧的 n 个字

cd 用输入的正文替换光标的所在行

ncd 用输入的正文替换光标下面的 n 行

c$ 用输入的正文替换从光标开始到本行末尾的所有字符

c0 用输入的正文替换从本行开头到光标的所有字符

2. 退出插入模式
退出插入模式的方法是,按 ESC 键或组合键Ctrl+[ 。

1.6.4 命令模式
在 vi 的命令模式下,可以使用复杂的命令。在编辑模式下键入“:”,光标就跳到屏幕最后一行,并在 那里显示冒号,此时已进入命令模式。命令模式又称“末行模式”,用户输入的内容均显示在屏幕的最后 一行,按回车键,vi 执行命令。
1. 退出命令
在编辑模式下可以用 ZZ 命令退出 vi 编辑程序,该命令保存对正文所作的修改,覆盖原始文件。如果只需要

退出编辑程序,而不打算保存编辑的内容,可用下面的命令:

: q 在未作修改的情况下退出

: q! 放弃所有修改,退出编辑程序

2. 行号与文件
编辑中的每一行正文都有自己的行号,用下列命令可以移动光标到指定行:

: n 将光标移到第 n 行

命令模式下,可以规定命令操作的行号范围。数值用来指定绝对行号;字符“.”表示光标所在行的行号;字符

符“___FCKpd___8rdquo;表示正文最后一行的行号;简单的表达式,例如“.+5”表示当前行往下的第 5 行。例如:

:345 将光标移到第 345 行

:345w file 将第 345 行写入 file 文件

:3,5w file 将第 3 行至第 5 行写入 file 文件

:1,.w file 将第 1 行至当前行写入 file 文件

:.,$w file 将当前行至最后一行写入 file 文件

:.,.+5w file 从当前行开始将 6 行内容写入 file 文件

:1,$w file 将所有内容写入 file 文件,相当于 :w file 命令

在命令模式下,允许从文件中读取正文,或将正文写入文件。例如:

:w 将编辑的内容写入原始文件,用来保存编辑的中间结果

:wq 将编辑的内容写入原始文件并退出编辑程序(相当于 ZZ 命令)

:w file 将编辑的内容写入 file 文件,保持原有文件的内容不变

:a,bw file 将第 a 行至第 b 行的内容写入 file 文件

:r file 读取 file 文件的内容,插入当前光标所在行的后面

:e file 编辑新文件 file 代替原有内容

:f file 将当前文件重命名为 file

:f 打印当前文件名称和状态,如文件的行数、光标所在的行号等

3. 字符串搜索
给出一个字符串,可以通过搜索该字符串到达指定行。如果希望进行正向搜索,将待搜索的字符串置于两个“

/”之间;如果希望反向搜索,则将字符串放在两个“?”之间。例如:

:/str/ 正向搜索,将光标移到下一个包含字符串 str 的行

:?str? 反向搜索,将光标移到上一个包含字符串 str 的行

:/str/w file 正向搜索,并将第一个包含字符串 str 的行写入 file 文件

:/str1/,/str2/w file 正向搜索,并将包含字符串 str1 的行至包含字符串 str2 的行写

入 file 文件

4. 正文替换
利用 :s 命令可以实现字符串的替换。具体的用法包括:

:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1

:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1

:g/str1/s//str2/g 功能同上

从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索

字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

5. 删除正文
在命令模式下,同样可以删除正文中的内容。例如:

:d 删除光标所在行

:3d 删除 3 行

:.,$d 删除当前行至正文的末尾

:/str1/,/str2/d 删除从字符串 str1 到 str2 的所有行

6. 恢复文件
vi 在编辑某个文件时,会另外生成一个临时文件,这个文件的名称通常以 . 开头,并以 .swp 结尾。vi 在

正常退出时,该文件被删除,若意外退出,而没有保存文件的最新修改内容,则可以使用恢复命令:

:recover 恢复文件

也可以在启动 vi 时利用 -r 选项。

选项设置
为控制不同的编辑功能,vi 提供了很多内部选项。利用 :set 命令可以设置选项。基本语法为:

:set option 设置选项 option

常见的功能选项包括:

autoindent 设置该选项,则正文自动缩进

ignorecase 设置该选项,则忽略规则表达式中大小写字母的区别

number 设置该选项,则显示正文行号

ruler 设置该选项,则在屏幕底部显示光标所在行、列的位置

tabstop 设置按 Tab 键跳过的空格数。例如 :set tabstop=n,n 默认值为 8

mk 将选项保存在当前目录的 .exrc 文件中

shell 切换
在编辑正文时,利用 vi 命令模式下提供的 shell 切换命令,无须退出 vi 即可执行 Linux 命令,十分

方便。语法格式为:

:! command 执行完 shell 命令 command 后回到 vi

另外,在编辑模式下,键入 K ,可命令 vi 查找光标所在单词的手册页,相当于运行 man命令。

vim 和 gvim 的高级特色
Vim 代表 Vi IMproved,如同其名称所暗示的那样,Vim 作为标准 UNIX 系统 vi 编辑器的提高版而存在。 Vim 除提供和 vi 编辑器一样强大的功能外,还提供有多级恢复、命令行历史以及命令及文件名补全等 功能。
gvim 是 vi 的 X Window 版本,该版本支持鼠标选中,一些高级光标移动功能,并且带有菜单和工具按钮。

  • linux涓璿i缂栬緫鍣鎬庢牱浣跨敤
    绛旓細1銆侀鍏堣繘鍏Linux鐨鍛戒护琛岀晫闈.鍦ㄧ洰褰曚笅鍒涘缓涓涓敤浜庢祴璇曠殑鏂囨湰鏂囦欢(touch filename).杩欓噷灏辨柊寤轰簡涓涓猼est12鏂囨湰鏂囦欢.褰撶劧杩欎釜鍚嶅瓧鏄彲浠ラ殢渚垮彇寰.2銆佺敤"vi test12"鍛戒护杩涘叆vi鍛戒护琛屾ā寮(vi filename). 濡傛灉瑕佹兂缂栬緫鏂囨湰鏂囦欢.蹇呴』瑕佽浆鎹㈠埌鎻掑叆妯″紡涓,涔熷氨鏄寜涓涓嬮敭鐩樹笂鐨"i"灏卞彲浠ヤ簡.杩欐牱灏卞彲浠...
  • linux vi鍛戒护璇﹁В
    绛旓細鍙湁鍦↖nsert mode涓嬶紝鎵嶅彲浠ュ仛鏂囧瓧杈撳叆锛屾寜銆孍SC銆嶉敭鍙洖鍒板懡浠よ妯″紡銆傚簳琛屾ā寮忥紙last line mode锛夛細灏嗘枃浠朵繚瀛樻垨閫鍑簐i锛屼篃鍙互璁剧疆缂栬緫鐜锛屽瀵绘壘瀛楃涓层佸垪鍑鸿鍙封︹︾瓑銆備笉杩囦竴鑸垜浠湪浣跨敤鏃舵妸vi绠鍖栨垚涓や釜妯″紡锛屽氨鏄皢搴曡妯″紡锛坙ast line mode锛変篃绠楀叆鍛戒护琛屾ā寮廲ommand mode锛夈2銆乿i鍛戒护...
  • linux鍛戒护涔vi
    绛旓細鍦╒i涓紝鍙互浣跨敤澶氱鍛戒护鏉ョ紪杈戞枃鏈涓浜涘父鐢ㄥ懡浠ゅ寘鎷細1. i锛氳繘鍏ユ彃鍏ユā寮忥紝鐢ㄤ簬鏂囨湰杈撳叆銆2. ESC閿細閫鍑烘彃鍏ユā寮忔垨鍛戒护妯″紡锛岃繑鍥炲埌鏅氭ā寮忋3. :w锛氫繚瀛樻枃浠躲4. :q锛氶鍑虹紪杈戝櫒銆5. dd锛氬垹闄ゅ綋鍓嶈銆6. yy锛氬鍒跺綋鍓嶈銆7. p锛氱矘璐村埌褰撳墠琛屼箣鍚庛備笁銆佹搷浣滄妧宸 浣跨敤Vi缂栬緫鏂囨湰鏃讹紝闇瑕...
  • Linux Vi缂栬緫鍣鐨勪娇鐢ㄦ柟娉
    绛旓細涓銆乧entOS涓媣i楂樹寒鏄剧ず 棣栧厛锛寁im鎵嶆湁璇硶楂樹寒鐨勫姛鑳斤紝閰嶇疆鏂囦欢鍦/etc/vim/vimrc 1銆乿i鑷姩杞负vim /etc/profile鏈鍚庡姞涓 alias vi='vim'2銆佽娉曢珮浜畍i /etc/vim/vimrc 鏌ョ湅 syntax on 鏄墦寮鐨 3銆佸姞涓婄幆澧冨彉閲忚缃 vi /etc/profile鐜鍙橀噺璁剧疆閮ㄥ垎鍔犱笂 export TERM=xterm-color 4銆侀噸鍚湇...
  • linux鐨剉i鍛戒护澶у叏vilinux鍛戒护
    绛旓細1.杞埌鏈妯″紡锛>SHIFT+;锛>setnumber(寮勫嚭琛屽彿)锛屽綋鍓嶈鍙穋o鏈鍚庝竴琛岀殑琛屽彿銆2.濡傛灉褰撳墠琛屽彿co鏈鍚庝竴琛岀殑琛屽彿锛>灏辫繖鏍锋搷浣:锛屽綋鍓嶈鍙,褰撳墠琛鐨勪笅涓琛宑o鏈鍚庝竴琛岀殑琛屽彿锛岀劧鍚庡啀鎶婂綋鍓嶈鐨勪笅涓琛岋紝>杩欎竴琛岀粰鍘绘帀灏辫浜嗐Linux绯荤粺涓紝濡備綍鐢vi鍛戒护鍒犻櫎鍚湁鏌愬瓧绗︾殑琛岋紵vi浣跨敤鍏ラ棬vi鏄竴涓猆nix/...
  • 濡備綍鍦╨inux涓璿i浣跨敤鏂规硶
    绛旓細鍙湁鍦↖nsert mode涓锛屾墠鍙互鍋氭枃瀛楄緭鍏ワ紝鎸夈孍SC銆嶉敭鍙洖鍒板懡浠よ妯″紡銆3) 搴曡妯″紡锛坙ast line mode锛夊皢鏂囦欢淇濆瓨鎴栭鍑簐i锛屼篃鍙互璁剧疆缂栬緫鐜锛屽瀵绘壘瀛楃涓层佸垪鍑鸿鍙封︹︾瓑銆備笉杩囦竴鑸垜浠鍦ㄤ娇鐢鏃舵妸vi绠鍖栨垚涓や釜妯″紡锛屽氨鏄皢搴曡妯″紡锛坙ast line mode锛変篃绠楀叆鍛戒护琛屾ā寮廲ommand mode锛夈2銆vi...
  • 濡備綍鍦╨inux涓璿i浣跨敤鏂规硶
    绛旓細1. 绉诲姩鍏夋爣 瑕佸姝f枃鍐呭杩涜淇敼锛岄鍏堝繀椤绘妸鍏夋爣绉诲姩鍒版寚瀹氫綅缃傜Щ鍔ㄥ厜鏍囩殑鏈绠鍗鐨勬柟寮鏄寜閿洏鐨勪笂銆涓銆佸乏銆佸彸绠ご閿傞櫎浜嗚繖绉嶆渶鍘熷鐨勬柟娉涔嬪锛岀敤鎴疯繕鍙互鍒╃敤 vi 鎻愪緵鐨勪紬澶氬瓧绗︾粍鍚堥敭锛屽湪姝f枃涓Щ鍔ㄥ厜鏍囷紝杩 閫熷埌杈炬寚瀹氱殑琛屾垨鍒楋紝瀹炵幇瀹氫綅銆備緥濡傦細k銆乯銆乭銆乴 鍔熻兘鍒嗗埆绛夊悓浜庝笂銆佷笅銆...
  • linux鐨剉i缂栬緫鍣ㄥ懡浠
    绛旓細璇硶锛歷i锛堥夐」锛夛紙鍙傛暟锛夊弬鏁帮細甯哥敤鐨勫懡浠ゆ湁浠ヤ笅锛歩 鍒囨崲鍒拌緭鍏ユā寮忥紝浠ヨ緭鍏ュ瓧绗︺倄 鍒犻櫎褰撳墠鍏夋爣鎵鍦ㄥ鐨勫瓧绗︺: 鍒囨崲鍒板簳绾鍛戒护妯″紡锛屼互鍦ㄦ渶搴曚竴琛岃緭鍏ュ懡浠ゃ傝緭鍏ユā寮忎腑鐨勫懡浠ゆ湁浠ヤ笅鎸夐敭锛欵NTER锛屽洖杞﹂敭锛屾崲琛 BACK SPACE锛岄鏍奸敭锛屽垹闄ゅ厜鏍囧墠涓涓瓧绗 DEL锛屽垹闄ら敭锛屽垹闄ゅ厜鏍囧悗涓涓瓧绗 鏂瑰悜閿紝鍦...
  • Linux涓璿i鐨勬煡鎵俱佹浛鎹佸垹闄ゆ搷浣
    绛旓細鍦╲i涓鐞嗭細棣栧厛浣跨敤vi鎵撳紑鏂囦欢锛岀劧鍚庢寜ESC閿紝鎺ョ潃杈撳叆鍛戒护锛1: :%s/^V^M//2: :%s/^M$//g 濡傛灉涓婅堪鏂规硶鏃犵敤锛屽垯姝g‘鐨瑙e喅鍔炴硶鏄細1: tr -d 鈥/r鈥 src dest2: tr -d 鈥/015鈥 dest3: 4: strings AB 鍏跺畠鐢ㄦ硶 1: :s/str1/str2/     #鐢ㄥ瓧绗...
  • linux vi鍛戒护璇﹁В
    绛旓細linux涓媣i鍛戒护澶у叏 杩涘叆vi鐨勫懡浠 vi filename :鎵撳紑鎴栨柊寤烘枃浠,骞跺皢鍏夋爣缃簬绗竴琛岄 vi +n filename :鎵撳紑鏂囦欢,骞跺皢鍏夋爣缃簬绗琻琛岄 vi + filename :鎵撳紑鏂囦欢,骞跺皢鍏夋爣缃簬鏈鍚庝竴琛岄 vi +/pattern filename:鎵撳紑鏂囦欢,骞跺皢鍏夋爣缃簬绗竴涓笌pattern鍖归厤鐨勪覆澶 vi -r filename :鍦ㄤ笂娆℃鐢╲i缂栬緫鏃跺彂鐢熺郴...
  • 扩展阅读:linux使用vim编辑文件 ... linux怎么进入vi编辑 ... linux进入vi教程 ... linux终端vi使用方法 ... linux中vi编辑器的使用 ... linux命令vi怎么编辑 ... linux vi编辑器命令vi ... linux为什么很少人用 ... vi创建并编辑一个文件 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网