1,文本編輯器
行編輯器:sed ,Stream EDitor
全屏幕編輯器:nano,emacs,vim(visual interface improved)
2.vi 模式化編輯器:
一般模式:遊標移動,刪除字符
輸入模式:以插入或取代編輯檔案內容
指令模式:讀取,查找替換
vi +n file 打開文本光標定在n行
vi+/pattern file 打開文本光標定在第一個匹配的地方
一般模式-輸入模式
i:當前光標所在字符前
a:光標所在字符後
o:下一個行
I:行首插入
A:行尾插入
O:下行插入
編輯模式--一般模式
ESC
一般模式--命令模式
:
光標移動:
h j k l
n [hjkl]跳轉n個字符
詞間跳轉:
w 下個單詞詞首
nw:跳n個單詞 (下兩個也支持)
e:跳到單詞詞尾
b:前個單詞詞首
跳到行首行尾:
^:行首第一個非空字符
0,$:絕對的行首行尾
行間跳轉:
nG跳轉到n行
G:最後一行
gg:第一個行
翻頁操作:
ctrl +f 下一屏
ctrl +b 上一屏
ctrl +d 下半屏
ctrl +u 上半屏
刪除:
x:刪除光標處一個字符
s:刪除光標處字符並進入編輯模式
nx:刪除n個字符
dw,de, d0,d$=D
dd:刪除一行
ndd:刪除n行
c:刪除並切換到編輯
在命令模式下 地址定界d 【Enter】
:1,30d
. 當前行
$最後一樣 :.,$d 刪除最後一行
+
-
/pattern1/,/pattern2/d 下一行開始找,刪除從第一次
匹配到patter1到第一次pattern2的行
p:在當前光標所在行下方粘貼
P:在上行粘貼
y:複製
yw,yb,ye,y^,y$
yy
nyy:
可視化模式:
v:
V:
u:撤銷上一次操作 nu 撤銷n次操作
Ctrl-r:撤銷最後一次的撤銷操作
. 重做上一個操作
/keyword
?keyword
n
N
差找替換:在命令模式下實現:
:定界s/ 查找的內容/替換成的內容/[g|i] ,(globle,ignore case)
查找的內容支持正則表達式,
替換的內容不支持正則表達式,但支持後向引用.
:1,20/ssssssssss/&r/g &用於引用查找的字符
1,$ = % 全文
分割符:
/:當匹配中出現同樣內容建議更換分隔符 如 : ; #等
!:命令模式下執行命令
:1,50w /path 保存
:r /path 讀取
窗口拆分
ctrl-w ,s 水平拆分
ctrl-w,v 垂直拆分
ctrl-w,hjkl 移動光標
ctrl-w,q退出
打開多個文件:
:next
:prev
:first
:last
:wall
:wqall
:q!all
打開多個文件並拆分
vim –o /path 水平拆分
vim –O /path 垂直拆分
:syntax on 語法高亮
2.文件測試:
-e /path/filename
-f 文件
-d 目錄
-l 鏈接
-r 可讀
-w 可寫
-x 可執行
條件組合:
!:取反
-a:與
-o:或
特殊變量:$0,$1,$2,$@,$*,$#
3,條件判斷語句
if conditon(判斷);then
statement
……
fi
if condition ;then
……………
else
……………
fi
if condition;then
………
elif condition;then
………
……
else
………
fi
循環:
for.指定有限次數
for var in el1 el2 el3;do
statement
……
done
while
util