一、背景
1.1 引言
为方便我们日常工作,我们可以在Linux系统下自定义一些使用的小工具,在此抛砖引玉简单举例说明,大家可以根据自己的需求自定义小脚本。
1.2 需求
大家在Linux服务器之上编写脚本时,有需要在脚本首部添加自定义banner,可以方便方便其他人了解此脚本功能得信息,例如:
/bin/env bash
Description: /mybin/myvim scripts
Auth: xuel
Date: 2019-03-07 13:36
Version: 1.0
如果每次编写都手动添加一次就很麻烦,如果是IDE一般工具都可以自定义配置添加首部banner,但是在Linux系统内部编写简单shell或文本,我们可以自定义自己的小工具来实现。
二、实现
2.1 思路
我们可以修改新增一个脚本将其添加进PATH中,如果利用此命令打开已存在的文件,利用vim直接打开,不对原内容作出更改,如果之前文件未存在,就在文件首部自动添加banner并用vim打开。
2.2 操作方法
- 创建可执行文件目录
mkdir /mybin && cd /mybin # 创建自定义可执行文件目录,后期添加进PATH变量中
- 创建自定义功能脚本
touch myvim # 创建myvim工具
文件内容如下:
#!/usr/bin/env bash
# auth:kaliarch
# function: auto generate banner
# file not exist
[ $# -eq 0 ] && echo "$0 [file],At least one parameter!" && exit 1
# add banner
add_banner() {
cat > $1 << EOF
#!/bin/env bash
# Description: $0 scripts
# Auth: $USER
# Date: $(date +%F" "%H:%M)
# Version: 1.0
EOF
}
# exist file
for file in $*;
do
if [ -f ${file} ];then
vim ${file} && exit 0
else
touch ${file} && add_banner ${file} && vim ${file} && exit 0
fi
done
- 添加权限并加入PATH
[root@devops-server mybin]# chmod +x myvim # 添加可执行权限
[root@devops-server mybin]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@devops-server mybin]# echo "export PATH=$PATH:/mybin" >> /etc/profile # 将mybin添加进PATH中
[root@devops-server mybin]# source /etc/profile
[root@devops-server mybin]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/mybin
- 演示
三、反思
3.1 注意
- 在此只是抛砖引玉列举了简单的小功能,个人可根据自己需求来实现其他功能
- 需要注意添加进PATH路径,并添加可执行权限
3.2 举例
例如打开终端会自动获取天气,利用yd来翻译单词等