『壹』 vi命令行模式怎麼用
任何時候,不管用戶處於何種模式,只要按一下ESC鍵,即可使Vi進入命令模式;我們在shell環境(提示符為$)下輸入啟動Vi命令,進入編輯器時,也是處於該模式下。在該模式下,用戶可以輸入各種合法的Vi命令,用於管理自己的文檔。此時從鍵盤上輸入的任何字元都被當做編輯命令來解釋,若輸入的字元是合法的Vi命令,則Vi在接受用戶命令之後完成相應的動作。但需注意的是,所輸入的命令並不在屏幕上顯示出來。若輸入的字元不是Vi的合法命令,Vi會響鈴報警。(BY三人行慕課)
『貳』 如何將vim中的內容復制到命令行
在命令行下輸入命令:
vim --version | grep clipboard
看一下輸出結果中clipboard前面是+還是-,如果是+,這就意味著vim是可以與系統共享剪切板的。剪切板在vim中也是一個寄存器,它的名字是 * ,也就是一個雙引號。使用方法是,比如你想將一行的內容復制到剪切板中,選中內容後,按下 。
"*y (也就是一個雙引號,一個星號,一個字母y),這樣選中的內容就被復制到剪切板中了,選中文本的方法是使用vim的visual模式。
『叄』 linux 用vim查看文件後怎麼輸入命令
以下是VI有關文件修改與保存的命令:
插入命令
i 在當前位置生前插入
I 在當前行首插入
a 在當前位置後插入
A 在當前行尾插入
o 在當前行之後插入一行
O 在當前行之前插入一行
查找命令
/text查找text,按n健查找下一個,按N健查找前一個。
?text查找text,反向查找,按n健查找下一個,按N健查找前一個。
vim中有一些特殊字元在查找時需要轉義.*[]^%/?~$
:set ignorecase忽略大小寫的查找
:set noignorecase不忽略大小寫的查找
查找很長的詞,如果一個詞很長,鍵入麻煩,可以將游標移動到該詞上,按*或#鍵即可以該單詞進行搜索,相當於/搜索。而#命令相當於?搜索。
:set hlsearch高亮搜索結果,所有結果都高亮顯示,而不是只顯示一個匹配。
:set nohlsearch關閉高亮搜索顯示
:nohlsearch關閉當前的高亮顯示,如果再次搜索或者按下n或N鍵,則會再次高亮。
:set incsearch逐步搜索模式,對當前鍵入的字元進行搜索而不必等待鍵入完成。
:set wrapscan重新搜索,在搜索到文件頭或尾時,返回繼續搜索,默認開啟。
替換命令
ra 將當前字元替換為a,當期字元即游標所在字元。
s/old/new/ 用old替換new,替換當前行的第一個匹配
s/old/new/g 用old替換new,替換當前行的所有匹配
%s/old/new/ 用old替換new,替換所有行的第一個匹配
%s/old/new/g 用old替換new,替換整個文件的所有匹配
:10,20 s/^/ /g 在第10行知第20行每行前面加四個空格,用於縮進。
ddp 交換游標所在行和其下緊鄰的一行。
移動命令
h 左移一個字元
l 右移一個字元,這個命令很少用,一般用w代替。
k 上移一個字元
j 下移一個字元
以上四個命令可以配合數字使用,比如20j就是向下移動20行,5h就是向左移動5個字元,在Vim中,很多命令都可以配合數字使用,比如刪除10個字元10x,在當前位置後插入3個!,3a!<Esc>,這里的Esc是必須的,否則命令不生效。
w 向前移動一個單詞(游標停在單詞首部),如果已到行尾,則轉至下一行行首。此命令快,可以代替l命令。
b 向後移動一個單詞 2b 向後移動2個單詞
e,同w,只不過是游標停在單詞尾部
ge,同b,游標停在單詞尾部。
^ 移動到本行第一個非空白字元上。
0(數字0)移動到本行第一個字元上,
<HOME> 移動到本行第一個字元。同0健。
$ 移動到行尾 3$ 移動到下面3行的行尾
gg 移動到文件頭。 = [[
G(shift + g) 移動到文件尾。 = ]]
f(find)命令也可以用於移動,fx將找到游標後第一個為x的字元,3fd將找到第三個為d的字元。
F 同f,反向查找。
跳到指定行,冒號+行號,回車,比如跳到240行就是 :240回車。另一個方法是行號+G,比如230G跳到230行。
Ctrl + e 向下滾動一行
Ctrl + y 向上滾動一行
Ctrl + d 向下滾動半屏
Ctrl + u 向上滾動半屏
Ctrl + f 向下滾動一屏
Ctrl + b 向上滾動一屏
撤銷和重做
u 撤銷(Undo)
U 撤銷對整行的操作
Ctrl + r 重做(Redo),即撤銷的撤銷。
刪除命令
x 刪除當前字元
3x 刪除當前游標開始向後三個字元
X 刪除當前字元的前一個字元。X=dh
dl 刪除當前字元, dl=x
dh 刪除前一個字元
dd 刪除當前行
dj 刪除上一行
dk 刪除下一行
10d 刪除當前行開始的10行。
D 刪除當前字元至行尾。D=d$
d$ 刪除當前字元之後的所有字元(本行)
kdgg 刪除當前行之前所有行(不包括當前行)
jdG(jd shift + g) 刪除當前行之後所有行(不包括當前行)
:1,10d 刪除1-10行
:11,$d 刪除11行及以後所有的行
:1,$d 刪除所有行
J(shift + j)刪除兩行之間的空行,實際上是合並兩行。
拷貝和粘貼
yy 拷貝當前行
nyy 拷貝當前後開始的n行,比如2yy拷貝當前行及其下一行。
p 在當前游標後粘貼,如果之前使用了yy命令來復制一行,那麼就在當前行的下一行粘貼。
shift+p 在當前行前粘貼
:1,10 co 20 將1-10行插入到第20行之後。
:1,$ co $ 將整個文件復制一份並添加到文件尾部。
正常模式下按v(逐字)或V(逐行)進入可視模式,然後用jklh命令移動即可選擇某些行或字元,再按y即可復制
ddp交換當前行和其下一行
xp交換當前字元和其後一個字元
剪切命令
正常模式下按v(逐字)或V(逐行)進入可視模式,然後用jklh命令移動即可選擇某些行或字元,再按d即可剪切
ndd 剪切當前行之後的n行。利用p命令可以對剪切的內容進行粘貼
:1,10d 將1-10行剪切。利用p命令可將剪切後的內容進行粘貼。
:1, 10 m 20 將第1-10行移動到第20行之後。
退出命令
:wq 保存並退出
ZZ 保存並退出
:q! 強制退出並忽略所有更改
:e! 放棄所有修改,並打開原來文件。
『肆』 在vim的命令模式中要進入輸入模式,可以按()鍵,()鍵,()鍵
最常用的是"i"和"a",但讓填3個,再加個"c"吧。
其實以下幾個鍵都可以:
"i","I","a","A","o","O","c","C","s"和"S".
『伍』 如何在vim中插入shell命令
vim中執行shell命令,有以下幾種形式1):!command不退出vim,並執行shell命令command,將命令輸出顯示在vim的命令區域,不會改變當前編輯的文件的內容例如:!ls -l
特別的可以運行:!bash來啟動一個bash shell並執行命令,不需要退出vim
2):r !command將shell命令command的結果插入到當前行的下一行例如:r !date,讀取系統時間並插入到當前行的下一行。3):起始行號,結束行號 !command將起始行號和結束行號指定的范圍中的內容輸入到shell命令command處理,並將處理結果替換起始行號和結束行號指定的范圍中的內容例如:62,72 !sort,將62行到72行的內容進行排序可以只指定起始行,例如:62 !tr [a-z] [A-Z],將62行的小寫字母轉為大寫字母當前游標所在行,除可以指定行號外,也可以用.表示,例如:. !tr [a-z] [A-Z],將當前行的小寫轉為大寫4):起始行號,結束行號 w !command將起始行號和結束行號所指定的范圍的內容作為命令command的輸入。不會改變當前編輯的文件的內容例如:62,72 w !sort,將62行到72行的內容進行排序,但排序的結果並不會直接輸出到當前編輯的文件中,而是顯示在vim敲命令的區域特殊的可以下面這么用:62 w !bash,將會把第62行的內容作為bash命令來執行並顯示結果,而且不會改變當前編輯的文件的內容同樣的:. w !bash,將當前行的內容作為bash命令來執行例如52行內容為ls -l那麼輸入:52 w !bash就跟執行!ls -l是一樣的效果,如果你用的shell是bash shell
如果輸入的是:52 !bash,那麼會把第52行的內容也就是ls -l作為命令執行,同時命令的輸出結果會替換第52行的內容,注意其中的區別。
『陸』 Linux vim的命令行模式的一些疑問
後一個命令會覆蓋前一個命令。比如後輸入的dd,前面的3y就不起作用了。
『柒』 Vim如何輸入多個命令在命令提示符問題,怎麼解決
能詳細描述一下需求么?舉個例子,要做什麼,准備用哪幾條命令。
由於 windows 下的命令集較少,介面的友好度也不夠,因為和 cmd 互動可能會有些困難。有時候讓 vim 自食其力也不錯。
『捌』 linux vi如何進入命令模式
1、首先打開linux vi,進入到編輯頁面中,
『玖』 vim如何一次輸入多行命令
可以用分號分隔命令。不過這只寫在一行上了而已,和分別打數行沒有什麼本質區別。
如果在編輯文本的時候,確實感覺需要連續執行數個冒號命令,可以使用 ex-mode。用 gQ 進入該模式。和普通模式相比,就是不用再每次按冒號了。而且執行命令後不會立即刷屏,所以執行效果有時不能立即看到。用 :vi 命令返回普通模式。
『拾』 ubuntu的vim模式輸入什麼命令都沒有反應
1、在命令行執行vim /etc/fstab
2、按i進入編輯模式,用方向鍵移動到你要插入的位置
3、/dev/sda4 /disk4 ext2 defaults 0 0 把這行粘貼進去(不確定你的ctrl+v是否好使,建議你手動輸入吧)
4、按ESC,再按:wq保存退出。
建議你了解一下vim的基礎使用