linux文件编辑命令详细整理,Linux文件编辑命令vi详细说明
目錄
1、引言
2、vi命令與vim命令
3、vi命令使用
3.1一般模式
3.2編輯模式(重點)
3.3命令行模式
1、引言
相信有很多程序員朋友,在長時間不操作linux系統或者初學linux命令時,都有跟我有一樣的疑惑。
這個vim命令與vi命令有什么區別?不都是編輯器么?
2、vi命令與vim命令
其實,很好理解:
首先來說它們兩者的共同點:都是文本編輯器。
接下來是它們兩者的不同點:
【 vi編輯器】:vi是所有Unix及Linux系統下標準的編輯器,他就相當于windows系統中的記事本一樣,
它的強大不遜色于任何最新的文本編輯器。他是我們使用Linux系統不能缺少的工具。
【 vim編輯器】:vim可以當作vi的升級版本,vim最大的特點是具有程序編輯的能力,可以以字體顏色
辨別語法的正確性,方便程序設計。vim里面加入了很多額外的功能,例如支持正則表
達式的搜索、多文件編輯、塊復制等等。
綜上所述:
由于vi編輯器對于Unix及Linux系統的任何版本,vi編輯器都是完全相同的,
所以,我們只需學會vi編輯器,您將在Linux的世界里暢行無阻。
3、vi命令使用
vi基本上可以分為三種模式,分別是一般模式、編輯模式和命令行模式,各模式的功能區分如下:
①、一般模式:
當以vi打開一個文件就直接進入一般模式了(這是默認的模式)。在這個模式中,你可以使用
上下左右按鍵來移動光標,你可以使用刪除字符或刪除整行來處理文件內容,也可以使用
復制、粘貼來處理你的文件數據。
②、編輯模式:
在一般模式中可以進行刪除、復制、粘貼等的操作,但是卻無法編輯文件的內容,只有當到
你按下【i, I, o,O, a, A, r, R】等任何一個字母之后才會進入編輯模式。這時候屏幕的左下方
會出現【INSERT或 REPLACE】的字樣,此時才可以進行編輯。而如果要回到一般模式時,
則必須要按下【Esc】即可退出編輯模式。
③、命令行模式:
輸入【 : / ? 】三個中的任何一個,就可以將光標移動到最底下那一行。在這個模式中,可以
提供查找、讀取、存盤、替換字符、離開vi、顯示行號等的動作則是在此模式中完成的。
此為概念的理解以及講解。下面為命令的講解。
3.1一般模式
a.移動光標
h:控制光標左移一格
j :控制光標下移一格
k:控制光標上移一格
l :控制光標右移一格
ctrl+b:屏幕往后移動一頁
ctrl+f :屏幕往前移動一頁
ctrl+u:屏幕往后移動半頁
ctrl+d:屏幕往前移動半頁
0 :移到文章的開頭
G:移動到文章的最后
$ :移動到光標所在行的行尾
^ :移動到光標所在行的行首
w:光標跳到下個字的開頭
e :光標跳到下個字的字尾
b :光標回到上個字的開頭
#l:光標移到該行的第#個位置,如:5l,56l
b.刪除文字
x: ??每按一次,刪除光標所在位置的"后面"一個字符
#x: 例如,「6x」表示刪除光標所在位置的"后面"6個字符
X:??大寫X,每按一次,刪除光標所在位置的"前面"一個字符
#X: 例如,「20X」表示刪除光標所在位置的"前面"20個字符
dd:??刪除光標所在行
#dd:從光標所在行開始刪除#行
c.復制
yw:??將光標所在之處到字尾的字符復制到緩沖區中
#yw:復制#個字到緩沖區 yy:復制光標所在行到緩沖區
#yy: 例如,「6yy」表示拷貝從光標所在的該行"往下數"6行文字
p: ??將緩沖區內的字符貼到光標所在位置;
注意:所有與"y"有關的復制命令都必須與"p"配合才能完成復制與粘貼功能
d.替換
r :替換光標所在處的字符。
R:替換光標所到之處的字符,直到按下「ESC」鍵為止
e.跳至指定的行
ctrl+g:列出光標所在行的行號
#G:例如,「15G」,表示移動光標至文章的第15行行首
f.更改
cw:??更改光標所在處的字到字尾處
c#w:例如,「c3w」表示更改3個字
g.恢復上一次操作
u:如果您誤執行一個命令,可以馬上按下「u」,回到上一個操作;
按多次"u"可以執行多次回復
3.2編輯模式(重點)
a.進入編輯模式
i : 從目前光標所在處插入
I : 在目前所在行的第一個非空格符處開始插入
a: 從目前光標所在的下一個字符處開始插入
A: 從光標所在行的最后一個字符處開始插入
o :在目前光標所在的下一行處插入新的一行
O:在目前光標所在處的上一行插入新的一行
r : 只會取代光標所在的那一個字符一次
R:會一直取代光標所在的文字,直到按下 ESC 為止
Esc:退出編輯模式,回到一般模式
3.3命令行模式
注意:如在編輯模式,需按下【Esc】退出編輯模式,回到一般模式
a.進入命令行模式 (指令前帶 ":",再敲指令前先敲 ":" )
:w : 保存編輯的內容
:w! :強制寫入該文件,但跟你對該文件的權限有關
:q :??離開vi
:q! : 不想保存修改強制離開
:wq :保存后離開
:x : ??保存后離開
ZZ :若文件沒有更動,則不保存離開,若文件已經被更改過,則保存后離開
:w filename :將編輯的數據保存成另一個文件(類似另存)
:r filename : 在編輯的數據中,讀入另一個文件的數據。
即將【filename】 這個文件的內容加到光標所在行后面
:n1,n2 w filename :將n1到n2的內容保存成filename這個文件
:! command :暫時離開vi 到命令行模式下執行command的顯示結果;
例如 【:! ls /home】即可在 vi 當中察看/home底下以ls輸出的文件信息
:set nu :顯示行號
:set nonu :與 set nu 相反,為取消行
b.查找(指令前帶 ":",再敲指令前先敲 ":" )
/xxx: 向光標向下尋找一個名稱為xxx的字符串
?xxx:向光標向上尋找一個名稱為xxx的字符串
n:代表重復前一個查找的動作
N:與n剛好相反,為【反向】進行行前一個查找動作
:n1,n2s/xxx/yyy/g:n1與n2為數字,在第n1與n2行之間查找xxx這個字符串,
并將該字符串替換為yyy
:1,$s/xxx/yyy/g: 從第一行到最后一行查找xxx字符串,并將該字符串替換為yyy
:1,$s/xxx/yyy/gc:從第一行到最后一行查找xxx字符串,并將該字符串替換為yyy,
且在替換前提示用戶確認是否進行替換
總結
以上是生活随笔為你收集整理的linux文件编辑命令详细整理,Linux文件编辑命令vi详细说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: list的contains方法为什么不好
- 下一篇: java jndi tcp_spring