linux命令vi文本编辑器的使用方法 linux命令vi文本编辑器的使用方法
linux\u4e2d\u600e\u4e48\u7528\u547d\u4ee4\u6253\u5f00\u6587\u672c\u6587\u4ef6\uff1flinux\u4e2d\u600e\u4e48\u7528\u547d\u4ee4\u6253\u5f00\u6587\u672c\u6587\u4ef6\u7684\u65b9\u6cd5\uff08\u5229\u7528Vim\u6587\u672c\u7f16\u8f91\u5668\uff09\uff1a
1\u3001\u6253\u5f00\u7ec8\u7aef\u3002\u70b9\u51fb\u83dc\u5355\u3002
2\u3001\u7136\u540e\u627e\u5230\u7ec8\u7aef\u7a0b\u5e8f\u3002\u7a0b\u5e8f\u7684\u56fe\u6807\u662f\u4e00\u4e2a\u9ed1\u8272\u7684\u65b9\u6846\uff0c\u4e0a\u9762\u6709\u4e00\u4e2a\u767d\u8272\u7684\u201c>_\u201d\u3002\u70b9\u51fb\u5b83\u3002\u4e00\u822c\u53ef\u4ee5\u4ece\u83dc\u5355\u7a97\u53e3\u7684\u5de6\u4fa7\u680f\u4e2d\u627e\u5230\u201c\u7ec8\u7aef\u201d\u7a0b\u5e8f\u3002
3\u3001\u5728\u7ec8\u7aef\u7a0b\u5e8f\u4e2d\u8f93\u5165vi \u6587\u4ef6\u540d.txt \u3002 \u547d\u4ee4\u4e2d\u7684\u201cvi\u201d\u90e8\u5206\u662f\u9009\u62e9\u201cVim\u201d\u6587\u672c\u7f16\u8f91\u5668\u6765\u6253\u5f00\u5e76\u7f16\u8f91\u6587\u4ef6\u3002\u7528\u76ee\u6807\u6587\u4ef6\u540d\u6765\u4ee3\u66ff\u547d\u4ee4\u4e2d\u7684\u201c\u6587\u4ef6\u540d\u201d\u3002
\u4f8b\u5982\u6587\u4ef6\u540d\u662f\u201ctamins\u201d\uff0c\u8bf7\u8f93\u5165vi tamins.txt\uff0c\u6309\u4e0bEnter\u952e\u3002
4\u3001\u5173\u95ed\u6587\u4ef6\u65f6\u5728\u7ec8\u7aef\u4e2d\u8f93\u5165:q \uff0c\u6309\u4e0b\u56de\u8f66\u952e\u3002 \u8fd9\u6837\u4f1a\u9000\u51faVim\u7a0b\u5e8f\uff0c\u8fd4\u56de\u5230\u7ec8\u7aef\u4e3b\u754c\u9762\u3002
\u5982\u679c\u4f60\u60f3\u7f16\u8f91\u67d0\u4e2a\u6587\u6863 \u53ef\u4ee5\u76f4\u63a5\u7f16\u8f91\u7684\u5982\u4f60\u6709\u6587\u6863AA \u53ef\u4ee5\u7528vi AA \u3010\u6ce8\u610f\uff1a\u5fc5\u987b\u5728AA\u6240\u5728\u7684\u76ee\u5f55\u4e0b\u3011
\u5982\u679c\u6ca1\u6709\u6587\u6863\u800c\u4e14\u4f60\u53c8\u60f3\u7f16\u8f91\u5c31\u53ef\u4ee5\u76f4\u63a5\u7f16\u8f91vi aa\u3010\u540d\u5b57\u4f60\u53ef\u4ee5\u968f\u4fbf\u547d\u540d\u3011
\u4e5f\u53ef\u4ee5\u5148\u5efa\u7acb\u4e00\u4e2a\u6587\u6863touch aa \u7136\u540e\u518d\u7f16\u8f91vi aa
\u7f16\u8f91\u5668\u6709\u4e09\u79cd\u6a21\u5f0f 1 \u547d\u4ee4\u884c\u6a21\u5f0f 2 \u672b\u884c\u6a21\u5f0f 3 \u8f93\u5165\u6a21\u5f0f
\u6309Esc \u5c31\u53ef\u4ee5\u8fdb\u5165\u547d\u4ee4\u884c\u6a21\u5f0f\u4e5f\u662f\u7cfb\u7edf\u9ed8\u8ba4\u6a21\u5f0f
\u8f93\u5165\u6a21\u5f0f\u53ef\u4ee5\u6309 o i a \u90fd\u53ef\u4ee5\u8fdb\u5165 \u9000\u51fa\u53ef\u4ee5\u8fdb\u5165\u672b\u884c\u548c\u547d\u4ee4\u884c\u6a21\u5f0f
\u672b\u884c\u6a21\u5f0f\u53ef\u4ee5\u6309ctrl+\uff1b\u5b83\u7684\u4e3b\u8981\u529f\u80fd\u662f\u9000\u51fa\u7f16\u8f91\u5668 \u4e5f\u53ef\u4ee5\u4fdd\u5b58\u9000\u51fa\u6587\u6863
q! \u3010\u5f3a\u5236\u9000\u51fa\u4e0d\u4fdd\u5b58\u3011 q\u3010\u9000\u51fa\u4e0d\u4fdd\u5b58\u3011 wq\u3010\u9000\u51fa\u5e76\u4fdd\u5b58\u540e\u9762\u4e5f\u53ef\u4ee5\u52a0\u4e2a\uff01\u3011
\u5728\u8f93\u5165\u6a21\u5f0f\u548c\u547d\u4ee4\u884c\u6a21\u5f0f\u547d\u4ee4\u5f88\u591a \u5982\u679c\u4f60\u60f3\u5177\u4f53\u77e5\u9053\u54ea\u4e9b\u4f60\u53ef\u4ee5\u5728\u548c\u6211\u8bf4
\u5982\u590d\u5236\uff08yy\uff09\u7c98\u8d34\uff08p) \u5220\u9664\uff08d\uff09\u7b49\u7b49
基本上vi可分为三种操作状态,分别是命令模式(Command mode)、插入模式(Insert mode)和底线命令模式(Last line mode),
各模式的功能区分如下:
1. Comand mode:控制屏幕光标的移动,字符或光标的删除,移动复制某区段及进入Insert mode下,或者到Last line mode。
2. Insert mode:唯有在Insert mode下,才可做文字数据输入,按Esc等可回到Comand mode。
3. Last line mode:将储存文件或离开编辑器,也可设置编辑环境,如寻找字符串、列出行号等。
不过可以把vi简化成两个模式,即是将Last line mode也算入Command mode,把vi分成Command 和Insert mode。
vi的基本操作
?进入vi
在系统提示符号输入vi及文件名称后,即可进入vi全屏幕编辑画面:
$ vi testfile
有一点要特别注意,就是您进入vi之后是处于“Command mode”下,您要切换到Insert mode才能输入文字。
初次用vi的用户都会想先用上下左右键移动光标,结果电脑一直叫,把自己气个半死,所以进入vi后,先不要乱动,
转换入Insert后再说。?切换至Insert mode编辑文件在Command mode下按‘i’、‘a’或‘o’三键就可进入Insert mode。
这时候您就可以开始输入文字了。
i: 插入,从目前光标所在之处插入所输入的文字。
a: 增加,目前光标所在的下一个字开始输入文字。
o: 插入新的一行,从行首开始输入文字。
?Insert的切换→Command mode,按Esc键
您目前处于Insert mode,您就只能一直打字。假如您发现打错字了,想用光标键往回移动,将该字删除,
就要按ESC键转换回Command mode,再删除文字。
?离开vi及存文件
在Command mode下,可按冒号“:”键入入Last line mode,例如:
:w filename (输入“w filename”,将文章存入指定的文件名filename)
:wq (输入“wq”,因为进入之时已经指定文件名testfile,所以会写入testfile并离开vi)
:q! (输入“q!”,强制离开并放弃编辑的文件)
Command mode功能键列表
在介绍command mode指令的时后,指令后面加上“常用”字眼的功能键,表示比较常用的vi指令,
请读者您一定要学会、记住。
(1)I、a、o切换进入Insert mode。[超级常用]
(2)移动光标
vi可以直接用键盘上的光标键来上下左右移动,但正规的vi是用小写英文字母
h、j、k、l,分别控制光标左、下、上、右移一格。
按Ctrl+B:屏幕往后移动一页。[常用]
按Ctrl+F:屏幕往前移动一页。[常用]
按Ctrl+U:屏幕往后移动半页。
按Ctrl+D:屏幕往前移动半页。
按 0 (数字零):移动文章的开头。[常用]
按 G:移动到文章的最后。[常用]
按 w:光标跳到下个word的开头。[常用]
按 e:光标跳到下个word的字尾。
按 b:光标回到上个word的开头。
按 $:移到光标所在行的行尾。[常用]
按 ^:移到该行第一个非空白的字符。
按 0:移到该行的开头位置。[常用]
按 #:移到该行的第#个位置,例:51、121。[常用]
(3)删除文字
x:每按一次删除光标所在位置的后面一个字符。[超常用]
#x:例如,6x 表删除光标所在位置的后面6个字符。[常用]
X:大字的X,每按一次删除光标所在位置的前面一个字符。
#X:例如,20X 表删除光标所在位置的前面20个字符。
dd:删除光标所在行。[超常用]
#dd:例如,6dd表删除从光标所在的该行往下数6行之文字。[常用]
(4)复制
yw:将光标所在处到字尾的字符复制到缓冲区中。
(想在和#x、#X的功能相反)
p:将缓冲区内的字符粘贴到光标所在位置(指令‘yw’与‘p必须搭配使用)。
yy:复制光标所在行。[超常用]
p:复制单行到您想粘贴之处。(指令‘yy’与‘p’必须搭配使用)
#yy:如:6yy表示拷贝从光标所在的该行往下数6行之文字。[常用]
p:复制多行到您想粘贴之处。(指令‘#yy’与‘p’必须搭配使用)
“ayy:将复制行放入buffer a, vi提供buffer功能,可将常用的数据存在buffer
“ap:将放在buffer a的数据粘贴。
“b3yy:将三行数据存入buffer b。
“b3p:将存在buffer b的资料粘贴
(5)取代
r: 取代光标所在处的字符:[常用]
R:取代字符直到按Esc为止。
(6)复原(undo)上一个指令
u:假如您误操作一个指令,可以马上按u,回复到上一个操作。[超常用]
.: .可以重复执行上一次的指令。
(7)更改
cw:更改光标所在处的字到字尾$处。
c#w:例如,c3w代表更改3个字。
(8)跳至指定行
Ctrl+G:列出光标所在行的行号。
#G:例如,15G,表示移动光标至文章的第15行行首。[常用]
Last line mode下指令简介
读者您要使用Last line mode之前,请记得先按Esc键确定您已经处于Command mode下后,再按冒号“:”或“/”或“?”
三键的其中一键进入Last line mode。
1.列出行号
set nu: 输入“set nu”后,会在文章的每一行前面列出行号。
2.跳到文章的某一行
#:井号代表一个数字,在Last line mode提示符号“:”前输入数字,再按Enter就会跳到该行了,
如:15[Enter]就会跳到文章的第15行。[常用]
3.寻找字符串
/关键字:先按/,再输入您想寻找的字,如果第一次找的关键字不是您相尽可能的,可以一直按n会往下寻找到您要的关键字为止。
?关键字:先按?,再输入您想寻找的字,如果第一次找的关键字不是您想要的,可以按n会往前寻找到您要的关键字为止。
4.取代字符串
1,$s/string/replae/g:在last line mode输入“1,$s/string/replace/g”会将全文的string字符串取代为replace字符串,
其中1,$s就是指搜寻区间为文章从头至尾的意思,g则是表示全部取代不必确认。
%s/string/replace/c:同样会将全文的string字符串取代为replace字符串,和上面指令不同的地方是,%s和1,$s是相同的功能,
c则是表示要替代之前必须再次确认是否取代。
1,20s/string/replace/g:将1至20行间的string替代为relpace字符串。
5.存文件
w:在last line mode提示符号“:”前按w即可将文件存起来。[超常用]
#,# w filename:如果您想摘取文章的某一段,存成另一个文件,可用这个指令#代表行号,例如30,50 w nice,
将您正在编辑文章的第30~50行存成nice这个文件。
6.离开
q:按q就离开,有时如果无法离开vi,可搭配“!:强置离开vi,如“q!”
qw:一般建议离开时,搭配w一起使用,如此离开时还可存文件
trkg5581jvlj
绛旓細1銆侀鍏堣繘鍏Linux鐨勫懡浠琛岀晫闈.鍦ㄧ洰褰曚笅鍒涘缓涓涓敤浜庢祴璇曠殑鏂囨湰鏂囦欢(touch filename).杩欓噷灏辨柊寤轰簡涓涓猼est12鏂囨湰鏂囦欢.褰撶劧杩欎釜鍚嶅瓧鏄彲浠ラ殢渚垮彇寰.2銆佺敤"vi test12"鍛戒护杩涘叆vi鍛戒护琛屾ā寮(vi filename). 濡傛灉瑕佹兂缂栬緫鏂囨湰鏂囦欢.蹇呴』瑕佽浆鎹㈠埌鎻掑叆妯″紡涓,涔熷氨鏄寜涓涓嬮敭鐩樹笂鐨"i"灏卞彲浠ヤ簡.杩欐牱灏卞彲浠...
绛旓細1銆佺‘瀹歷im宸茬粡瀹夎鍒颁簡浣犵殑璁$畻鏈轰腑銆傚叾瀹烇紝濡傛灉鏄痳edhat鐨勮瘽锛vi鏄竴鏍风殑鏁堟灉銆2銆侀粯璁ゆ儏鍐典笅vim浼氬畨瑁呭湪/usr/bin涓嬮潰锛岀‘瀹氳繖涓洰褰曞姞鍏ュ埌浜嗕綘鐨刾ath鍙橀噺涓傦紙涓鑸儏鍐典笅閮藉姞鍏ヤ簡鐨勶紝鐩存帴鐢ㄥ氨濂斤級3銆佹墦寮涓涓粓绔傚湪缁堢涓洿鎺ヨ緭鍏im锛屽嵆鍙墦寮vim缂栬緫鍣銆linux鎬庝箞鐢鍛戒护鎵撳紑缂栬緫鍣紵1銆佹墦寮缁堢...
绛旓細1.鍦ㄥ懡浠や笅浣跨敤gedit锛氫繚瀛樻枃浠跺悗鍏抽棴绋嬪簭绐楀彛灏嗚嚜鍔ㄩ鍑哄埌鍛戒护琛鐣岄潰锛2.鍦ㄥ懡浠よ涓嬩娇鐢╲im锛氣憼鍏堟寜涓婨SC閫鍑缂栬緫妯″紡锛涒憽杈撳叆锛歸q淇濆瓨骞堕鍑烘垨鑰卶閫鍑烘垨鑰卶!寮哄埗閫鍑猴紝浠庤屽洖鍒板懡浠よ鐣岄潰锛linux閰嶇疆鐩存帴鐢╒IM榛樿鎵撳紑鏂囦欢锛熸柟娉曚竴锛氫富瑕佹槸鎶奼edit榛樿鎵撳紑鐨勬枃浠堕兘鏀规垚vim浜嗘鏂规硶鏈夌己闄枫傛帹鑽愪娇鐢ㄦ柟娉曚簩...
绛旓細瑕佽繘鍏vi缂栬緫妯″紡锛岃鎸夌収浠ヤ笅姝ラ鎿嶄綔锛 1. 鎸変笅閿洏涓婄殑“i”閿紝杩欏皢浣縱i杩涘叆鎻掑叆妯″紡銆傛鏃讹紝浣犲彲浠ュ湪鍏夋爣鎵鍦ㄧ殑琛屼笂杈撳叆鏂囨湰銆 2. 鎸変笅閿洏涓婄殑“Esc”閿紝杩欏皢浣縱i閫鍑烘彃鍏ユā寮忓苟杩涘叆鍛戒护妯″紡銆 3. 杈撳叆“:”瀛楃锛岀劧鍚庢寜涓嬪洖杞﹂敭銆傝繖灏嗘彁绀轰綘杈撳叆涓涓懡...
绛旓細LINUX鐨刅I缂栬緫鍣鎬庝箞閫鍑哄晩鎬ュ晩锛Linux涓閫鍑篤I缂栬緫鍣ㄥ彲浠ヤ娇鐢ㄤ互涓鍛戒护锛1銆:q 绂诲紑vi(甯哥敤)銆2銆:q!鑻ユ浘淇敼杩囨。妗堬紝鍙堜笉鎯冲偍瀛橈紝浣跨敤!涓哄己鍒剁寮涓嶅偍瀛樻。妗堛2銆:wq 鍌ㄥ瓨鍚庣寮锛岃嫢涓:wq!鍒欎负寮哄埗鍌ㄥ瓨鍚庣寮(甯哥敤)4銆:x 淇濆瓨鍚庨鍑烘枃浠躲
绛旓細Linux鍛戒护琛鐣岄潰閫氬父浣跨敤鐨勭▼搴缂栬緫鍣鏄紵Linux鎿嶄綔绯荤粺涓嬶紝澶у鏈缁忓父浣跨敤鐨勭紪杈戝櫒鏄vi鍜寁im銆倂i绫讳技浜嶹indows骞冲彴鐨勮浜嬫湰notpad锛鏂囧瓧鐨鏍煎紡鏍峰紡姣旇緝鍗曚竴銆倂im绫讳技浜嶹indows骞冲彴鐨勫啓瀛楁澘锛屾枃瀛楃殑鏍峰紡鐩稿涓板瘜銆傚湪Linux骞冲彴鎵撳紑閰嶇疆鏂囦欢锛屽缓璁娇鐢╲im銆備笉鍚岀被鍨嬬殑鏂囧瓧锛岄鑹蹭笉鍚岋紝鍙互璁╀綘蹇熷尯鍒嗗嚭鍝簺鏄厤缃...
绛旓細鏈鍚庝竴琛屾ā寮忥細杈撳叆 quot: quot鍦ㄥ懡浠ゆā寮忎笅杩涘叆杩欑妯″紡銆傚湪鏈鍚庝竴琛屾ā寮忎腑鏈夎澶氭湁鐢ㄧ殑鍛戒护銆倂i鐨勫惎鍔ㄥ拰閫鍑虹洿鎺ヨ緭鍏鍛戒护vi涓嶆寚瀹氭枃浠跺悕锛屽洜涓鸿繖鏄竴涓病鏈夊悕瀛楃殑绌烘枃浠讹紝鏄剧ず鐨勬槸vi鐨勭増鏈俊鎭俈im鏄痸i缂栬緫鍣ㄧ殑鏀硅繘鐗堟湰锛屽湪vi缂栬緫鍣ㄧ殑鍩虹涓婃墿灞曚簡璁稿瀹炵敤鍔熻兘銆傚ぇ澶氭暟linux/unix鐗堟湰浣跨敤vim锛岃屼笉鏄...
绛旓細Vim鏄竴涓被浼间簬Vi鐨钁楀悕鐨勫姛鑳藉己澶с侀珮搴﹀彲瀹氬埗鐨鏂囨湰缂栬緫鍣锛屽湪Linux绯荤粺涓嬬粡甯镐娇鐢ㄧ紪杈戜竴浜涙枃鏈垨鑰呬唬鐮併1銆乂im 鍛戒护琛杈撳叆Vim寰缂栬緫鐨鏂囨湰銆傝繘鍏ョ晫闈㈣緭鍏鍗冲彲杩涘叆缂栬緫妯″紡銆備繚瀛樺唴瀹瑰墠鎸変綇ESC锛屽湪杈撳叆鈥:wq鈥濆嵆鍙繚瀛樺唴瀹广備絾澶у鏁版椂鍊欐枃鏈唴瀹瑰緢澶氶渶瑕佷慨鏀圭殑鍦版柟锛屽彧鏄竴浜涘唴瀹规鏃堕渶瑕佹悳绱㈠畾浣嶅埌寰...
绛旓細vi鏄竴涓父鐢ㄧ殑鏂囨湰缂栬緫鍣锛屽父鐢ㄤ簬Linux鍜孶nix绯荤粺涓備互涓嬫槸涓浜涘父鐢ㄧ殑vi鍛戒护锛氭墦寮鏂囦欢锛氬湪缁堢涓緭鍏ifilename鎵撳紑鏂囦欢锛屽鏋滄枃浠朵笉瀛樺湪锛屽垯浼氬垱寤轰竴涓柊鏂囦欢銆傛彃鍏ユā寮忥細鎸変笅i閿繘鍏ユ彃鍏ユā寮忥紝姝ゆ椂鍙互鍦ㄦ枃鏈腑杈撳叆鎴缂栬緫鏂囨湰銆備繚瀛樻枃浠讹細鍦ㄥ懡浠ゆā寮忎笅锛屾寜涓婨sc閿洖鍒板懡浠ゆā寮忥紝鐒跺悗杈撳叆:w锛屽啀鎸塃nter...
绛旓細1銆佽繛鎺ヤ笂鐩稿簲鐨刲inux涓绘満锛岃繘鍏ュ埌绛夊緟杈撳叆shell鎸囦护鐨刲inux鍛戒护琛鐘舵佷笅銆2銆佺敤vi鎵撳紑闇瑕佺紪杈戠殑鏂囦欢锛屾寜ESC锛岃緭鍏ワ細:q!銆3銆侀敭鐩樻寜鈥滃洖杞﹂敭鈥濊繍琛宻hell鎸囦护锛屾鏃朵細鍙戠幇鎴愬姛鎺ㄥ嚭浜唙i缂栬緫鐣岄潰鍥炲埌浜唋inux鍛戒护琛岀晫闈linuxvi鎻掑叆妯″紡鎬庝箞閫鍑猴紵vi缂栬緫鍣鏈変笁绉嶆ā寮忥細鍛戒护妯″紡锛岀紪杈戞ā寮忥紝鏈妯″紡 鎵撳紑vi鍚...