###############vim 工作參數(shù)設(shè)定################
1.臨時設(shè)定
:set 參數(shù)信息
:set nu #顯示行數(shù)
:set nonu #取消顯示行數(shù)
:set mouse=a #鼠標可以使用
:set cursorline #有下劃線
注意:
以上設(shè)定方式在vim退出后會還原默認
2.永久設(shè)定
vim /etc/vimrc ##設(shè)定進入頁面
set nu ##前面加數(shù)字
set mouse=a ##鼠標可以使用
set cursorline ##有下劃線
注意:
以上操作必須用root用戶才能完成
3.字符管理
y ##復(fù)制
y1 ##復(fù)制一個字母
y31 ##復(fù)制三個字母
yw ##復(fù)制一個單詞
y3w ##復(fù)制三個單詞
yy ##復(fù)制一整行
y3y ##復(fù)制三整行
c ##剪切
cl ##剪切一個字母
c3l ##剪切三個字母
cw ##剪切一個單詞
c3w ##剪切三個單詞
cc ##剪切一整行
c3c ##剪切三整行
注意:
當(dāng)用c做剪切動作后,vim會進入插入模式如果需要粘貼那么要按esc退出插入模式然后按p粘貼
d ##刪除
dl ##刪除一個字母
d3l ##刪除3個字母
dw ##刪除一個單詞
d3w ##刪除3個單詞
dd ##刪除一整行
d3d ##刪除三整行
p ##粘貼
u ##撤銷
ctrl+r ##恢復(fù)
4.vim的可視化模式
ctrl+v ##進入可視化模式
#可視化模式的批量添加
ctrl+v 進入可視化模式
選中要添加字符所在列
按”I”進入插入模式
寫入字符
按批量添加字符出現(xiàn)
5.字符的替換
首先按 Esc然后進行后續(xù)
:%s/原字符/替換后字符 ##每一行出現(xiàn)的第一個關(guān)鍵字
:%s/原字符/替換后字符/g ##全文替換,s所有行,g表示所有列
:3,5s/原字符/替換后字符/g ##替換第三行到第五行的關(guān)鍵字
:/lp/,/halt/s/sbin/hello/g ##替換lp字符和halt字符之間的所有關(guān)鍵字
6在vim中編寫多個文件
vim file
:sp file1
ctrl+w 放開 上/下/左/右 ##光標在窗口之間的移動。
7.光標移動及字符搜索
#光標移動
:數(shù)字 ##光標移動到指定的行
##光標移動到行首
##光標移動到行尾
gg ##光標移動到第一行
G ##光標移動到最后一行
#搜索字符
/關(guān)鍵字
n ##向下匹配
N ##向上匹配
######################插入模式##############
i ##光標所在位置插入
I ##光標所在行的行首插入
a ##光標所在字符的下個字符插入
A ##光標所在行行 尾插入
s ##刪除光標所在字符插入
S ##刪除光標所在行插入
o ##光標所在行的下一行插入
O ##光標所在行的上一行插入
##############退出模式###########
:q #退出,在打開文件后沒有對文件做任何修改時可使用
:wq #退出保存,在對文件修改后并保存內(nèi)容時使用。
:q! #強制退出,在對文件做修改后要放棄修改時使用
:wq! #強制退出保存,在對屬于自己的文件或你是root用戶時使用。
################linux中管理輸入輸出###########
> #重定向正確輸出
2> #重定向錯誤輸出
&> #重定向所有輸出
注意:重定向動作會覆蓋原文件內(nèi)容
例子:
用student用戶登陸系統(tǒng)
find /etc/ -name passwd #此命令在student用戶下執(zhí)行因為權(quán)限問題會報錯
find /etc/ -name passwd > file #將正確輸出導(dǎo)入到file文件夾,在屏幕上顯示錯誤結(jié)果
find /etc/ -name passwd 2> file2 #將錯誤結(jié)果導(dǎo)入file2,在屏幕顯示正確結(jié)果
find /etc/ -name passwd &> file3 #將所有結(jié)果導(dǎo)入file3
#輸出追加
追加會把定向的輸出放到原來文件最后不會覆蓋原來文件
>> #追加正確輸出
2>> #追加錯誤輸出
&>> #追加所有輸出
find /etc -name passwd >> file
find /etc -name passwd 2>> file.err
find /etc -name passwd &>> file.all
#輸入管理
< 內(nèi)容
EOF
cat > westos < hello
westos
world
EOF
cat westos
hello
westos
world
vim test.sh
#!/ban/bash
passwd < student
2018lee
2018lee
EOF
sh test.sh
#管道
| ##把第一條命令的正確輸出變成第二條命令的輸入
2>&1 ##將編號位的錯誤輸出轉(zhuǎn)換成編號為1
tee ##將輸出復(fù)制一份到指定位置
ls /ban | wc -l ##統(tǒng)計/bin中有多少文件
find /etc -name passwd 2>&1 | wc -l
find /etc/ -name passwd 2>&1 | tee file |wc -l
cat file