*** vim簡介***
- vi是Linux下默認(rèn)的文本編輯器蝇完,類似于Windows下面的記事本工窍,notepad++或者Editplus等等
- vim 可以理解成vi的升級(jí)版魄鸦,包括代碼補(bǔ)完密强、編譯及錯(cuò)誤跳轉(zhuǎn)等方便編程的功能特別豐富茅郎,有點(diǎn)像Windows下面的IDE工具了
這里只介紹在編寫腳本的時(shí)候,有時(shí)候每個(gè)腳本頭部都會(huì)寫上一些說明信息或渤,例如腳本名稱系冗,時(shí)間,腳本的說明等等
*** 配置***
- vim編輯器的初始化配置一般是在
vimrc
文件中薪鹦,有全局配置
和用戶配置
的區(qū)別- 如果vim的特性配置要給
當(dāng)前主機(jī)的所有用戶
使用掌敬,則考慮全局配置
- 如果只是給個(gè)人用戶使用,比如
root
池磁,則 考慮用戶配置
## 全局配置
vim /etc/vimrc
## 用戶配置
vim ~/.vimrc
配置舉例
root@pts/3 $ cat ~/.vimrc
## vim 格式化配置奔害, 這里不是重點(diǎn)
set tabstop=4
set softtabstop=4
set shiftwidth=4
set noexpandtab
set nu
## vim 頭部自動(dòng)生成
function AddTitle()
call setline(1,"#!/usr/bin/env bash")
call append(1,"# -*- coding: utf-8 -*-")
call append(2,"#Filename: " . expand("%"))
call append(3,"#Author: Liuchao")
call append(4,"#Email: 137642091@qq.com")
call append(5,"#Date: " . strftime("%Y-%m-%d"))
call append(6,"#Desc: ")
call append(7,"")
call append(8,"source /devOps/shell/common/functions")
call append(9," ")
endf
## 提示按'F4',會(huì)調(diào)用AddTitle函數(shù)
map <F4> : call AddTitle() <cr>
實(shí)際例子
root@pts/3 $ vim /tmp/test.sh (回車后直接按 'F4')
root@pts/3 $ cat /tmp/test.sh
#!/usr/bin/env bash
# -*- coding: utf-8 -*-
#Filename: /tmp/test.sh
#Author: Liuchao
#Email: 137642091@qq.com
#Date: 2016-06-12
#Desc:
source /devOps/shell/common/functions
小技巧
- 注意上面的例子中 Filename 后面跟著的是
絕配路徑
,因?yàn)樵趘im創(chuàng)建文件的時(shí)候用的就是絕對(duì)路徑
- 但是有時(shí)候我們想的是:不管我們創(chuàng)建的時(shí)候用的是
絕對(duì)路徑
還是在當(dāng)前路徑下直接寫的文件名
, 在自動(dòng)生成的Filename部分基括,只要得到具體的文件名
就行
vim 事件驅(qū)動(dòng)的腳本編寫和自動(dòng)化中,內(nèi)置的 expand()
函數(shù)
參數(shù) %
表示當(dāng)前包括文件名在內(nèi)的文件路徑
參數(shù) %:h
表示 只提取了這個(gè)路徑的 頭
沈撞,刪除了文件名稱,留下了預(yù)期目錄
參數(shù) %:t
表示 只提取了這個(gè)路徑的 尾
,刪除了文件路徑,只保留實(shí)際的文件名