1.文本處理工具Sed
Stream Editor 行編輯器
圖1-1 sed幫助手冊
用法:
sed [option]…'script' file…
常用選項:
-n:不輸出模式空間內容的自動打印
-e:多點編輯
-f file:從指定文件讀取編輯腳本
-r:支持擴展正則表達式
-i:原處編輯
地址定界:
1) 不給地址
2) 單地址
# 指定的行
/pattern/ 被此模式能匹配到的每一行
3) 地址范圍
#,# 指定的兩個數之間的行
#,+# 從第一數開始的#行數
/part1/,/part2/ part1和part2之間的行
#,/part1/ 從第一個數到part1之間的行
4) 步進
1~2 奇數行
2~2 偶數行
圖1-2 sed命令使用
編輯命令:
d 刪除模式空間匹配的行
p 顯示模式空間中的內容
a \text 在行后追加文本,支持\n
i \text 在行前追加文本,支持\n
c \text 替換行為單行或多行文本
w file 保存模式匹配的行之指定的文件
r file 讀取指定文件的文本至模式空間中匹配到的行后
= 為模式空間的行打印行號
!匹配行取反
s/// 查找替換,支持使用其他的分隔符 s@@@
替換標記:
g 行內全局替換
p 顯示替換成功的行
w file 將替換成功的行保存至文件中
圖1-2 sed命令使用
圖1-3 sed命令使用
高級編輯命令:
h 把模式空間中的內容覆蓋至保持空間中
H 把模式空間中的內容追加到保持空間中
g 把保持空間中的內容覆蓋到模式空間中
G 把保持空間中的內容追加到模式空間中
x 把模式空間中的內容與保持空間調換
n 讀取匹配到的行的下一行覆蓋至模式空間
N 讀取匹配到的行的下一行追加到模式空間
d 刪除模式空間中的行
D 刪除模式空間開端至\n的內容
圖1-4 sed模式空間與保持空間
2 VIM編輯器
2.1 VI即Visual Interface 文本編輯器
VIM是VI的升級,提供了更易用,更強大的功能。
圖2-1 vim幫助文檔
vim [option]…file…
+# 打開文件后,直接讓光標位于第#行的行首
+/pattern 打開文件后,直接讓光標處于第一個被pattern匹配到的行的行首
+ file 直接打開file,光標位于最后一行
-b file 以二進制打開文件
-d file1 file2 比較多個文件
-m file 只讀方式打開
ex file 直接進入ex模式
圖2-2 vim命令使用
2.2 三種主要模式
命令模式(默認):移動光標,剪切/粘貼文本等
插入(編輯)模式:修改文本
擴展命令模式: 保存,退出等
Esc鍵 退出當前模式
Esc鍵 Esc鍵 總是返回命令模式
圖2-3 三種模式間的切換
模式之間的轉換
1) 命令模式 –> 插入模式
i insert,在光標所在處輸入
I 在當前光標所在行的行首輸入
a append,在光標所在處的后面輸入
A 在當前光標所在行尾輸入
o 在當前光標所在行的下方打開一個新行
O 在當前光標所在行的上方打開一個新行
2) 插入模式 –> 命令模式
Esc
3)命令模式 –> 擴展模式
:
4) 擴展模式 –> 命令模式
Esc
5)解鎖與鎖定
Ctrl+s 鎖定
Ctrl+q 解鎖
擴展模式:
w 寫磁盤文件
wq 寫入并保存
x 寫入并推出
q 退出
q!不保存退出
r file 讀文件內容到當前文件
w file 將當前文件寫入另一個文件
!command 執行指令
r!command 在文件中顯示指令執行結果
圖2-4 !command命令使用
圖2-5 r!command命令使用
命令模式光標跳轉:
h 左 l 右 j 下 k 上
單詞間跳轉 行首行尾跳轉
w 下一個單詞的詞首 ^ 跳轉至行首第一個非空白字符
e 當前或下一個單詞詞尾 0 跳轉至行首
b 當前或下一個單詞詞首 $ 跳轉至行尾
當前頁跳轉 行間移動
H 頁首 #G 跳轉至由#指定的行
M 頁中間行 G 最后一行
L 頁底 1G,gg 第一行
句間移動 段落間移動
): 下一句 }: 下一段
(: 上一句 {: 上一段
字符編輯 刪除命令
x 刪除光標處的字符 d 刪除命令
#x 刪除光標處起始的#個字段 d$ 刪除到行尾
xp 交換光標與后面字符的位置 d^ 刪除到行首
~ 轉換大小寫 d0 刪除到行首
圖2-6 文本操作
地址定界
:start_pos,end_pos
# 具體第#行
#,# 行起始到行結尾
#,+# 從#行開始,加上右側#的行數
. 表示當前行
$ 最后一行
% 全文,相當于1,$
查找并替換
s/要查找的內容/替換為的內容/修飾符
替換的內容,不能使用模式,但可以使用\1 \2…等向后引用符號;還可以使用&引用前面查找到的整個內容,分隔符也可以使用其他符號如s@@@…
修飾符
i 忽略大小寫
g 全局替換
gc 全局替換,每次替換前詢問
圖2-7 查找替換
命令撤銷
u撤銷最近操作
#u可以撤銷多次之前的更改
U撤銷光標落在這一行后所有此行的更改
Ctrl -r 撤銷"撤銷"操作
. 重復前一個操作
n.重復前一個操作n次
2.3 多窗口的使用
多文件分割
vim -o|-O file1 file2
-o 水平分割
-O 垂直分割
Ctrl+w,arrow 窗口間切換
單文件分割
Ctrl+w,s 水平分割
Ctrl+w,v 垂直切割
Ctrl+w,q 取消相鄰窗口
Ctrl+w,o 取消全部窗口
wqall 退出
圖2-8 vim多窗口模式
2.4定制VIM的工作特性
配置文件:永久有效
全局:/etc/vimrc
個人:~/.vimrc
1) 設置行號 2)設置成對匹配 3)設置自動縮進 4)高亮搜索
set nu set showmatch(sm) set ai set hlsearch
5)設置語法高亮 6)忽略大小寫 7)設置文件格式 8)設置文本寬度
syntax on set ic fileformat=unix set textwidth=65
圖2-9 定制vim工作特性
原創文章,作者:Stupid_L,如若轉載,請注明出處:http://www.www58058.com/32088