vim 列編輯模式

lhrbest發表於2020-10-13

vim 列編輯模式

標籤: vim 視窗模式 列編輯模式


  • vim 列編輯模式
  • 例子:給列批量新增字首、字尾、修改欄位

vim 列編輯模式

vim 有三種編輯模式,命令模式、輸入模式、視窗模式,我們常用的是前兩種模式,但是視窗模式還是非常不錯的,進入 vim 編輯器,模式是命令模式,可以通過 ia 等進入輸入模式,也可以通過 vc+v 進入視窗模式。

視窗模式可以讓我們選擇一塊區域,這個區域好比是一個檢視視窗,可以進行批量編輯。

例子1:給列批量新增字首、字尾、修改

我們經常會有這樣的一個場景,需要對 excelcsv 的某一列進行編輯,例如新增一些字首、字尾或者修改,一般在維護資料或者批量生成一些 sql 語句非常常見。

那麼我們來看個例子:我們需要生成一組測試資料,這組資料需要新增 sql insert 字首,我們才能批量倒入到 DB 中去。

我們簡單來生成一組測試資料:

for ((i=1;i<=10000;i++))
do echo $RANDOM >> ids.csv
do

我們需要將這一組id新增到DB中,vim 編輯這個檔案。

vim ids.csv

vim

預設開啟是進去命令模式,此時我們需要在列的前後新增sql程式碼。c+v 進去視覺化模式。
vim

然後 GG 跳到最後一行,然後 L 向右選擇當前列。shit+i 切換到列前輸入。
vim

然後輸入sql insert 語句。

insert into tb_ids(id) values (

然後通過 esc 退出檢視模式,會自動生成所有行的字首。
vim

我們繼續新增列字尾部分。和之前的編輯模式還是一致的,只是全部選中之後使用 shit+a 切入到列後端。

輸入 sql insert 結尾部分。

);

vim

當然這裡面會有一些問題需要注意,列需要是有規則的,如果沒有規則的列需要先排序好,然後分批處理。如果是整行模式,可以直接 v 模式進入整行編輯模式。vim的功能還是很豐富的,這裡只是分享一個很簡單的例子。

作者:王清培 (趣頭條 Tech Leader)

相關文章