一、vim三種工作模式
命令模式
插入模式
退出模式
二、命令模式下的各類操作
1.配置vim工作方式
1)臨時設定
命令模式是vim開啟檔案後預設進入的模式,這個模式中不能插入字元,但是可以設定vim的工作方式
:set nu ##新增行號
:set nonu ##取消編號
:set cursorline ##下劃線
:set mouse=a ##新增滑鼠選擇
注意:在vim中直接設定vim的工作方式是臨時設定,也就是說當vim關閉,設定失效
2)永久設定
如果要永久設定需要root使用者編寫"/etc/vimrc".這個檔案也是vim的配置檔案
#永久設定
vim /etc/vimrc
set nu
set mouse=a
set cursorline
2.在命令模式下如何管理字元
按"x" ##刪除游標所在字元
按「p「 ##貼上
按"u" ##undo 恢復
按"ctrl+r" ##redo 撤銷恢復
按"y" ##複製
"yw" ##複製乙個單詞
「y5w」##複製五個單詞
"yl" ##複製乙個字母
"y3l"##複製三個字母
"yy" ##複製一整行
"y5y" ##複製5行
按"c" ##剪下
"cw" ##剪掉乙個單詞
"cl" ##剪掉乙個字母
"cc" ##剪掉一整行
"c5c" ##剪掉5行
注意:用c做剪下時,會進入插入模式,如果要貼上,需要退出插入模式。按再按p
按"d" ##刪除
"dw" ##刪除乙個單詞
"dl" ##刪除乙個字母
"dd" ##刪除一整行
"d5d" ##刪除5行
3.vim的視覺化模式
在可視模式下可以區域選擇字元
ctrl+v ###進入視覺化模式
按"上|下|左|右"移動游標選擇區域,按相應操作鍵就可以對選擇區域進行操作
注意:在命令模式下;不可用滑鼠選擇
批量新增字元:
step1: 把游標停留在想要加入字元所在的列的第一行
step2: 移動游標選擇新增字元所在列
step3: "i"進入插入模式
step4: 寫入要插入的字元
step5: "esc"退出插入模式,字元批量新增成功
4.批量字元替換
:%s/源字元/替換後字元 ##每一行出現的第乙個關鍵字
:%s/源字元/替換後字元/g ##全文替換,s所有行,g表示所有列
:3,5s/源字元/替換後字元/g ##替換第三行到第五行的關鍵字
:/lp/,/halt/s/sbin/hello/g ##lp字元和halt字元之間的所有關鍵字
5.游標移動及字元搜尋
1)游標移動
:數字 ##游標移動到指定的行
##游標移動到行首
##游標移動到行尾
g ##游標移動到最後一行
gg ##游標移動到第一行
2)字元查詢
/關鍵字
按「n「 #向下匹配
按「n「 #向上匹配
6.在vim中編寫多個檔案
vim file #開啟乙個檔案
:sp filename #開啟另一檔案
ctrl+w 上|下|左|右 ###游標在視窗之間的移動
三、插入模式下操作
i ##游標所在位置插入
i ##游標所在行的行首插入
a ##游標所在行行尾插入
a ##游標所在字元的下個字元插入
s ##刪除游標所在字元插入
s ##刪除游標所在行插入
o ##游標所在行的下一行插入
o ##游標所在行的上一行插入
四、退出模式
:q ###退出,當vim進入檔案沒有對檔案內容做任何操作可以按"q"退出
:q! ###強行退出,當vim進入檔案對檔案內容有操作但不想儲存退出
:wq ###儲存退出
:wq! ###強行儲存退出,只針對與root使用者或檔案所有人生效
五、檔案輸入輸出管理
1.輸入輸出定義
1)輸入就是我們的鍵盤,滑鼠和我們用這些硬體在系統只哦個錄入的字元
2)輸出就是系統接收到我們想要實現的功能字元後,經過程序的處理產生字元
輸出會有兩種出現:
編號1為正確輸出
編號2為錯誤輸出
預設著兩種輸出都會被系統定向到字元裝置中(/dev/)
2.管理輸出
1)輸出重定向:重定向動作會覆蓋原始檔內容
> ##重定向正確輸出
2> ##重定向錯誤輸出
&> ##重定向所有輸出
2>&1 ##把錯誤輸出的編號由2轉換為1
舉例:find /etc/ -name passwd > file.out #將passwd裡面正確的輸出( > )重定向到file.out中
find /etc/ -name passwd > file.out #將passwd裡面正確的輸出( > )重定向到file.out中
find /etc/ -name passwd &> file.all #將passwd裡面全部的輸出(&>)|(2>&1)重定向到file.all中
重輸出會覆蓋原檔案
2)輸出追加: 追加會把定向的輸出放到原檔案最後,不會覆蓋原檔案
>> ##追加正確輸出
2>> ##追加錯誤輸出
&>> ##追加所有輸出
舉例:find /etc/ -name passwd >> westos #將passwd的正確輸出內容追加( >> )到westos中
且不會覆蓋原檔案
3.用重定向完成非互動式多行錄入
方法:首尾一致,標準為eof
舉例: cat >file
eofsh huanying.sh #在我們呼叫sh命令不能自動執行,需要借助《輸入重定向符號進行重定向。
4.管道:通過管道後輸出會變成輸入,那麼不會再輸出到字元裝置檔案中,顯示到螢幕
| ##把第一條命令的正確輸出變成第二條命令的輸入
tee ##將輸出複製乙份到指定位置
舉例: ls /bin | wc -l ##統計/bin中有多少檔案,且沒有顯示ls命令的輸出
ls /bin | tee file | wc -l ###統計/bin中有多少個檔案,並將ls命令的輸出通過tee儲存到file檔案中
echo命令用於在shell中列印shell變數的值,或者直接輸出指定的字串。
輸入輸出管理
一 i o管理的基本概念 1.計算機外部裝置 計算機系統中除cpu和內儲存外所有的裝置和裝置稱為計算機外部裝置 外圍裝置 i o裝置 包括 a.儲存裝置 以塊為單位儲存資訊,又稱為塊裝置 b.i o裝置 用於向計算機輸入和輸出資訊的裝置 c.通訊裝置 負責計算機之間的資訊傳輸 2.裝置管理的目標 a...
輸入 輸出管理(I O
i o裝置管理是作業系統設計中最凌亂也最具挑戰性的部分。由於它包含了很多領域的不同裝置以及與裝置相關的應用程式,因此很難有乙個通用且一致的設計方案。所以在理解裝置管理之前,應該先了解具體的i o裝置型別。計算機系統中的i o裝置按使用特性可分為以下型別 1 人機互動類外部裝置 用於同計算機使用者之間...
linux下輸入輸出管理
1.系統中輸入輸出的管理 1.理解系統的輸入輸出 2.管理輸入輸出的符號 輸出重定向 重定向正確輸出 2 重定向錯誤輸出 重定向所有輸出 注意 重定向會覆蓋原檔案內容 示例 注意 以下實驗必須在student使用者下完成 find etc name passwd file 定向正確輸出到file f...