实现vim编写脚本时,自动加入文件头信息的两种方法

本文介绍两种在vim和shell环境下自动为脚本添加注释信息的方法。第一种使用vim脚本在.sh或.script文件中自动插入作者、创建时间等信息。第二种通过shell脚本创建并初始化.sh文件,同时自动填充元数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时候编写脚本,我们希望它能自动的加载一些信息,如当前的日期、邮箱、作者、当前编写脚本的文件名等信息。实现这种效果的方法有很多,下面我介绍两种方法。先来看看实现后的效果:

第一种方法

编辑/etc/vimrc文件,在该文件后追加以下信息:

map <F9> ms:call XYY()<cr>'s 
autocmd BufNewFile *.sh,*.script exec ":call XYY()"
function XYY()
call append(0,"##############################")
call append(1,"#Author:杨源                  ") 
call append(2,"#Create_Time:".strftime("%Y-%m-%d")."")
call append(3,"#Versios:1.0")
call append(4,"#Mail:1930818140@qq.com")
call append(5,"#Description:时光里的那缕风")
call append(6,"##############################")
call append(7,"#!/bin/bash")
endfunction

当您每次用vim编写一个以.sh或者.script结尾的文件的时候,他就会自动加载上注释信息了。对该文件的语法我懂的也不是很多,只能告诉您需要修改的地方。append函数的作用是,用“里面的信息”覆盖第几行(行号是从0开始,0代表第一行)。拿第二条来举例eg:call append(1,"#Author:杨源                  ")。该语法的解释是,调用系统函数append,用“#Author:杨源               ”的信息覆盖第二行。因为是注释信息,所以每一行的开头都是#号 。

您可以试一试效果了。

第二种方法

       用shell脚本来编写。对于经常用的脚本的路径我习惯性的保存在/etc/profile.d目录下。以下是我编写的脚本内容:

[root@mini1 app]# cat /etc/profile.d/shell.sh 
echo "#-----------------------------------------------------------------------" >> $1
echo " # 内核版本:`uname -r`" >> $1
echo " # 作    者:杨源" >> $1
echo " # 时    间:`date "+%F %T"`" >> $1
echo " # 文件名称:$1" >> $1
echo " # 版    本:1.1" >> $1
echo "#-----------------------------------------------------------------------" >> $1
echo >> $1
vim $1 +$

然后又设置了一个别名shell

[root@mini1 app]# alias shell
alias shell='. /etc/profile.d/shell.sh '

这样,我们就可以用别名shell创建脚本了,我们来创建一个i.sh脚本

[root@mini1 app]# shell i.sh
[root@mini1 app]# cat i.sh 
#-----------------------------------------------------------------------
 # 内核版本:3.10.0-1062.1.1.el7.x86_64
 # 作    者:杨源
 # 时    间:2019-09-30 03:26:36
 # 文件名称:i.sh
 # 版    本:1.1
#-----------------------------------------------------------------------

稍作解释:我们的这种方法相当于通过执行脚本的方法创建脚本。. /etc/profile.d/shell.sh i.sh:执行脚本shell.sh,i.sh作为第一个参数,我们将文件的头信息追加到 i.sh 文件。echo >> $1,添加一个空行。vim $1 +$,表示打开i.sh($1)文件时光标自动跳转到最后一行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值