1. 程式人生 > >mac 終端常用命令和vim普通命令使用

mac 終端常用命令和vim普通命令使用

如果使用者要離開電腦一段時間,可以選擇直接把筆記本直接合上。但是這樣原先在跑 的程序就會掛起或者結束,如果正在下載,那麼下載就被暫停(有時還不能恢復),如果正在提供網路服務,那麼因為網路斷了,別人也連不上你的筆記本。鎖屏可 以解決這個問題,在Windows下用Win+L快捷鍵就鎖屏了,但Mac OS X下一直沒有預設的快捷鍵。

對於像我一樣的新手,不要說設定鎖屏快捷鍵,即便要使用其他鎖屏的方法我也要到網上才能找到。其中一種方法是,首先在Finder找到“鑰匙串訪 問”這個實用工具(具體位置是/Applications/Utilities/Keychain Access.app),然後在“偏好設定”裡選擇“在選單欄中顯示鑰匙串狀態”。這時我們發現系統選單多了一個像鎖一樣的小圖示,只要點選它,就能找到 鎖屏。

上述的方法實現了鎖屏,但還沒能達到快捷鍵控制鎖屏的目標。雖然如此,但它的效果給我們一個鎖屏思路。首先,我們要求螢幕保護程式在恢復時必須輸入密碼,然後鎖屏問題就變成啟動螢幕保護程式的問題了。Lock the screen via a keyboard shortcut這篇文章敘述了具體的實施方法。

第一步,找到“系統偏好設定”下的“安全性與隱私”,在“通用”頁裡勾上“進入睡眠或開始螢幕保護程式後立即要求輸入密碼”。

第二步,要用快捷鍵啟動螢幕保護程式,相對複雜一點。在“應用程式”裡找到“Automator”。新建一個服務,在“操作”下的“實用工具”裡找 到“啟動螢幕保護程式”,並把此操作拖動到右邊,並且選擇“沒有輸入”和位於“任何應用程式”,如下圖所示。然後把服務儲存為自己定義的名字。

最後,在“系統偏好設定”裡找到“鍵盤”,然後為剛才定義的服務配置快捷鍵,我設成了Command+Control+L。

Vim常用命令

高階一些的編輯器,都會包含巨集功能,vim當然不能缺少了,在vim中使用巨集是非常方便的:

:qx     開始記錄巨集,並將結果存入暫存器x
q     退出記錄模式
@x     播放記錄在x暫存器中的巨集命令
稍微解釋一下,當在normal模式下輸入:qx後,你對文字的所有編輯動作將會被記錄下來,再次輸入q即退出了記錄模
式,然後輸入@x對剛才記錄下來的命令進行重複,此命令後可跟數字,表示要重複多少次,比如@x20,可以重複20次。這個在文字的批處理中是非常有用的。

同時編輯多個檔案
在vim眾多的外掛中,有一個叫minibuffer的外掛,就是下面所說的標籤頁功能了,可以支援同時編輯多個檔案。
標籤命令

:tabe fn     在一個新的標籤頁中編輯檔案fn
gt     切換到下一個標籤頁
gT     切換到上一個標籤頁
:tabr     切換到第一個標籤頁
:tabl     切換到最後一個標籤頁
:tabm [N]     把當前tab移動到第N個tab之後
對,正如你所想象的那樣,跟eclipse, ue等的標籤頁是一個意思!
視窗命令
ctrl+w s     水平分割視窗
ctrl+w w     切換視窗
ctrl+w q     退出當前視窗(由於同時有多個檔案,此命令不會影響其他視窗)
ctrl+w v     垂直分割視窗
其他
vim在儲存之前不會對檔案做實際的修改,只是載入到緩衝區中,對檔案的編輯其實是對緩衝區的編輯,直到:w時才會存入物理檔案。

:e file     把file載入到新的緩衝區中
:bn     跳轉到下一個緩衝區
:bd     刪除緩衝區(關閉檔案)
:sp fn     分割視窗,並將fn載入到新的視窗中
退出編輯器

:w     將緩衝區寫入檔案,即儲存修改
:wq     儲存修改並退出
:x     儲存修改並退出
:q     退出,如果對緩衝區進行過修改,則會提示
:q!     強制退出,放棄修改
查詢替換
/pattern     向後搜尋字串pattern
?pattern     向前搜尋字串pattern
n     下一個匹配(如果是/搜尋,則是向下的下一個,?搜尋則是向上的下一個)
N     上一個匹配(同上)
:%s/old/new/g     搜尋整個檔案,將所有的old替換為new
:%s/old/new/gc     搜尋整個檔案,將所有的old替換為new,每次都要你確認是否替換
複製貼上
dd     刪除游標所在行
dw     刪除一個字(word)
x     刪除當前字元
X     刪除前一個字元
D     刪除到行末
yy     複製一行,此命令前可跟數字,標識複製多行,如6yy,表示從當前行開始複製6行
yw     複製一個字
y$     複製到行末
p     貼上貼上板的內容到當前行的下面
P     貼上貼上板的內容到當前行的上面
]p     有縮排的貼上,vim會自動調節程式碼的縮排
"a     將內容放入/存入a暫存器,可以支援多貼上板
附:比如常用的一個暫存器就是系統暫存器,名稱為+,所以從系統貼上板貼上到vim中的命令為"+p,注意此處的+不表示操作符,二十一個暫存器。
移動游標
在vim中移動游標跟其他的編輯器中有很大的區別,不過一旦學會了,就會飛速的在文字中移動了。

h,j,k,l     左,下,上,右
ctrl-f     上翻一頁
ctrl-b     下翻一頁
%     跳到與當前括號匹配的括號處,如當前在{,則跳轉到與之匹配的}處
w     跳到下一個字首,按標點或單詞分割
W     跳到下一個字首,長跳,如end-of-line被認為是一個字
e     跳到下一個字尾
E     跳到下一個字尾,長跳
b     跳到上一個字
B     跳到上一個字,長跳
0     跳至行首,不管有無縮排,就是跳到第0個字元
^     跳至行首的第一個字元
$     跳至行尾
gg     跳至檔案的第一行
gd     跳至當前游標所在的變數的宣告處
[N]G     跳到第N行,如0G,就等價於gg,100G就是第100行
fx     在當前行中找x字元,找到了就跳轉至
;     重複上一個f命令,而不用重複的輸入fx
tx     與fx類似,但是隻是跳轉到x的前一個字元處
Fx     跟fx的方向相反
),(     跳轉到上/下一個語句
*     查詢游標所在處的單詞,向下查詢
#     查詢游標所在處的單詞,向上查詢
`.     跳轉至上次編輯位置
在螢幕上移動

H     移動游標到當前螢幕上最上邊的一行
M     移動游標到當前螢幕上中間的一行
L     移動游標到當前螢幕上最下邊的一行
書籤
ma     把當前位置存成標籤a
`a     跳轉到標籤a處
編輯
r     替換一個字元
J     將下一行和當前行連線為一行
cc     刪除當前行並進入編輯模式
cw     刪除當前字,並進入編輯模式
c$     擦除從當前位置至行末的內容,並進入編輯模式
s     刪除當前字元並進入編輯模式
S     刪除游標所在行並進入編輯模式
xp     交換當前字元和下一個字元
u     撤銷
ctrl+r     重做
.     重複上一個編輯命令
~     切換大小寫,當前字元
g~iw     切換當前字的大小寫
gUiw     將當前字變成大寫
guiw     將當前字變成小寫
>>     將當前行右移一個單位
<<     將當前行左移一個單位(一個tab符)
==     自動縮排當前行

插入模式
i     從當前游標處進入插入模式
I     進入插入模式,並置游標於行首
a     追加模式,置游標於當前游標之後
A     追加模式,置游標於行末
o     在當前行之下新加一行,並進入插入模式
O     在當前行之上新加一行,並進入插入模式
Esc     退出插入模式
可視模式
標記文字
v     進入可視模式,單字元模式
V     進入可視模式,行模式
ctrl+v     進入可視模式,列模式,類似於UE的列模式
o     跳轉游標到選中塊的另一個端點
U     將選中塊中的內容轉成大寫
O     跳轉游標到塊的另一個端點
aw     選中一個字
ab     選中括號中的所有內容,包括括號本身
aB     選中{}括號中的所有內容
ib     選中括號中的內容,不含括號
iB     選中{}中的內容,不含{}

對標記進行動作
>     塊右移
<     塊左移
y     複製塊
d     刪除塊
~     切換塊中內容的大小寫 文章連結:http://www.cnblogs.com/iphone520/archive/2012/03/26/2418468.html
文章連結:http://blog.csdn.net/xdrt81y/article/details/24062117