漫談程序員(十八)淺談谷歌用戶體驗(yàn)設(shè)計(jì)準(zhǔn)則
2221
2025-03-31
vi 編輯器
Linux:使用文本文件來保存配置文件
文本編輯器:ASCII文件
emacs vi
vi:Visual Interface(純字符界面的編輯器)
全屏文本編輯,nano
模式化的編輯器
moduler
vim :vi improved
vi的模式:
編輯模式:鍵盤操作通常被解析為編輯命令:
輸入模式:
末行模式:vim的內(nèi)置的命令行接口,執(zhí)行vim內(nèi)置命令
編輯模式–>輸入模式
i:當(dāng)前光標(biāo)處輸入內(nèi)容
I:在當(dāng)前光標(biāo)所在行的行首
a:在當(dāng)前光標(biāo)所在處的后面
A:在當(dāng)前光標(biāo)所在行的行尾輸入
o:在光標(biāo)所在行的下方新增一行空白行
O:在光標(biāo)所在行的上方新增一行空白行
輸入模式-->編輯模式 ESC 編輯模式-->末行模式 : 末行模式-->編輯模式 ESC,ESC
1
2
3
4
5
6
vi命令的使用格式
vim [options] /path/to/file
退出:
:q!強(qiáng)制退出,不保存并退出
:wq 保存修改并退出
:w 保存不退出
:x,保存并退出
編輯模式:ZZ,保存退出
打開:
多文件跳轉(zhuǎn)
:next 下一個(gè)
:prev 上一個(gè)
:first 第一個(gè)
:last 最后一個(gè)
:qall 退出所有的文件
:wqall:修改并退出多個(gè)文件
分隔窗口打開多個(gè)文件
-o:水平分隔
ctrl+w,上下箭頭
-O:垂直分隔
ctrl+w,左右箭頭
+#:打開文件后在第#號(hào)行首
+:打開文件后在最后一行
光標(biāo)移動(dòng):
單字符移動(dòng):
h:左
l:右
j:下
k:上
可以和數(shù)字組合
單詞間移動(dòng):
w:調(diào)至下一個(gè)單詞的詞首
b:當(dāng)前或前一個(gè)的詞首
e:當(dāng)前或下一個(gè)詞的詞尾
行內(nèi)移動(dòng):
0:絕對(duì)行首
^:第一個(gè)非空白字符
$:絕對(duì)行尾
句子間移動(dòng):
):上一句
(: 下一句
段落間移動(dòng):
}:上一段
{:下一段
行間移動(dòng):
#G:第幾行 #gg
G:最后一行
編輯操作:
x:刪除光標(biāo)所在處的字符
#x:刪除光標(biāo)所在處向后的#個(gè)字符
r:替換光標(biāo)所在處的字符
d:刪除命令 結(jié)果光標(biāo)跳轉(zhuǎn)命令使用 d^ 光標(biāo)刪除至行首 d$ 光標(biāo)刪除至行尾(shift+d) %:全部 dd:刪除一行 #dd:刪除所在行后的#行 y:復(fù)制命令 yy:復(fù)制當(dāng)前一行 p粘貼 #yy:復(fù)制#行
1
2
3
4
5
6
7
8
9
10
11
p:paste 粘貼
復(fù)制或刪除的是整行
p:當(dāng)前行的下一行
P:當(dāng)前行的上一行
復(fù)制或刪除的為非整行
p:粘貼在光標(biāo)所在字符的后面
P: 粘貼在光標(biāo)所在字符的前面
撤銷編輯
u:undo
#u:最近50次操作
撤銷此前的撤銷操作
ctrl+r:
重復(fù)執(zhí)行此前的命令:
.
翻屏:
ctrl+f:向文件尾部翻一屏
ctrl+b:向文件首部翻一屏
ctrl+d:向文件尾部翻半屏
ctrl+u:向文件首部翻半屏
Enter:下一行
k :上一行
查找:
/keyword
?keyword
n:往下翻查找的結(jié)果
N:往上翻查找的結(jié)果
支持正則表達(dá)式
vim的可視化模式
編輯模式:
v:按照光標(biāo)走過的區(qū)域選擇
V:選擇矩形行
vim可視化模式:
v: 按光標(biāo)走過的區(qū)域選擇
V: 選擇矩形行
ctrl+v:選擇矩形塊
末行模式:范圍定界
start,end:可以使用絕對(duì)定界,也可以使用相對(duì)定界
.:表示當(dāng)前行
$:最后一行
$-2:倒數(shù)第3行
/pat1/,/pat2/:起始處為光標(biāo)所在行
c:改變
跟d一樣操作
y:yank,復(fù)制
跟d一樣操作
s:替換
:set nohlsearch 關(guān)閉高亮顯示,對(duì)當(dāng)前shell有效
1
打開多個(gè)文件,分窗口:
vim -o
vim -O
Ctrl+w, 上下箭頭
分割當(dāng)前窗口:
Ctrl+w, s
Ctrl+w, v
窗口屬性的定義:
:set nu 輸出行號(hào)
:set nonu
:set ai 自動(dòng)縮進(jìn)(其他發(fā)行版本) :set shiftwidth=4 設(shè)置自動(dòng)縮進(jìn)空格數(shù)為4(ubuntu系統(tǒng)) :set softabstop=4 設(shè)置制表符寬度為4 :set ic 查找時(shí)不考慮大小寫 :set noic 查找時(shí)考慮大小寫 顯示對(duì)應(yīng)的括號(hào) :set sm (show match) :set nosm 語法高亮: :syntax on :syntax off 搜索高亮: :set hlsearch :set nohlsearch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
vim的配置文件:
全局:/etc/vimrc
個(gè)人:~/.vimrc
查找替換:
:地址定界s/查找模式/替換為的內(nèi)容/gi
g:全局替換
i:不區(qū)分大小寫
:地址定界s@查找模式@替換為的內(nèi)容@gi
&:用于在替換為的內(nèi)容部分中引用前面匹配到的所有內(nèi)容
find:
實(shí)時(shí)查找工具,通過遍歷指定路徑下的文件系統(tǒng)完成文件查找。
特點(diǎn):
查找速度慢
精確查找
實(shí)時(shí)查找
語法格式:
find [option]… [查找路徑] [查找條件] [處理動(dòng)作]
查找路徑:指定具體目標(biāo)路徑;默認(rèn)為當(dāng)前目錄 查找條件:指定的查找標(biāo)準(zhǔn),可以文件名、大小、類型、權(quán)限等標(biāo)準(zhǔn)進(jìn)行;默認(rèn)為找出指定路徑下所有文件 處理動(dòng)作:對(duì)符合條件的文件做什么操作,默認(rèn)為標(biāo)準(zhǔn)輸出至屏幕。、 -print:默認(rèn)動(dòng)作,輸出至屏幕 -ls:類似ls -l命令 -delete:查找出然后刪除 -fls /path/to/somefile -ok COMMAND {} \;對(duì)查到的每個(gè)文件執(zhí)行COMMAND命令,對(duì)于每個(gè)文件執(zhí)行命令,需交互確認(rèn) -exec COMMAND {} \;直接處理,不交互。 {}:用于引用查找到的文件名稱本身 查找條件: 根據(jù)文件名查找: -name "文件名稱" (支持使用glob通配 *,?,[],[^]) 例如 find /etc -name "passwd*" -iname "文件名稱" (不區(qū)分大小寫) -regex "PATTEN": 以PATTEN匹配整個(gè)文件路徑字符串,而不僅僅是文件名稱: 根據(jù)屬主 屬組查找 -user USERNAME:查找屬主為指定用戶的文件 group GROUPNAME:查找屬組為指定用戶的文件。 -uid UserID:查找屬主為指定UID的文件 -gid GroupID:查找屬主為指定GID的文件 -nouser:查找沒有屬主的文件 -nogroup:查找沒有屬組的文件 根據(jù)文件類型查找: -type TYPE: f:普通文件 d:目錄文件 l:符號(hào)鏈接文件 s:套接字文件 b:塊設(shè)備文件 c:字符設(shè)備文件 p:管道文件 組合條件(與 或 非) 根據(jù)文件大小來查找: -size [+|-]#UNIT 常用單位:k,M,G UNIT:(#-1,#] -UNIT:(0,#-1] +#UNIT:(#,oo) 根據(jù)時(shí)間戳: 以“天”為單位: -atime: [+|-]# -mtime: -ctime: 以“分鐘”為單位: -amin -mmin -cmin 根據(jù)權(quán)限來查找 -perm [+|-]MODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Linux
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。