標籤: vim 視窗模式 列編輯模式sql
vim 有三種編輯模式,命令模式、輸入模式、視窗模式,咱們經常使用的是前兩種模式,可是視窗模式仍是很是不錯的,進入 vim 編輯器,模式是命令模式,能夠經過 i、a 等進入輸入模式,也能夠經過 v、 c+v 進入視窗模式。vim
視窗模式可讓咱們選擇一塊區域,這個區域比如是一個視圖窗口,能夠進行批量編輯。後端
咱們常常會有這樣的一個場景,須要對 excel、csv 的某一列進行編輯,例如添加一些前綴、後綴或者修改,通常在維護數據或者批量生成一些 sql 語句很是常見。編輯器
那麼咱們來看個例子:咱們須要生成一組測試數據,這組數據須要添加 sql insert 前綴,咱們才能批量倒入到 DB 中去。測試
咱們簡單來生成一組測試數據:excel
for ((i=1;i<=10000;i++)) do echo $RANDOM >> ids.csv do
咱們須要將這一組id添加到DB中,vim 編輯這個文件。code
vim ids.csv
默認打開是進去命令模式,此時咱們須要在列的先後添加sql代碼。c+v 進去可視化模式。
排序
而後 GG 跳到最後一行,而後 L 向右選擇當前列。shit+i 切換到列前輸入。
it
而後輸入sql insert 語句。可視化
insert into tb_ids(id) values (
而後經過 esc 退出視圖模式,會自動生成全部行的前綴。
咱們繼續添加列後綴部分。和以前的編輯模式仍是一致的,只是所有選中以後使用 shit+a 切入到列後端。
輸入 sql insert 結尾部分。
);
固然這裏面會有一些問題須要注意,列須要是有規則的,若是沒有規則的列須要先排序好,而後分批處理。若是是整行模式,能夠直接 v 模式進入整行編輯模式。vim的功能仍是很豐富的,這裏只是分享一個很簡單的例子。
做者:王清培 (趣頭條 Tech Leader)