
最近很多同学在看我视频教程的时候,对 vii 这货很好奇,vii 是 vi 的亲戚吗?为什么用它新创建一个新程序能自动填充程序框架代码呢? 今天就来扒一扒这货。

其实,vii 是我写的一个脚本,跟 vi 没半毛钱关系,只不过借用一下这个名字而已。那这个脚本长什么样呢?look:

下面听我详细为你解析上面的代码,来看第1行:
#!/bin/bash
这是Shell脚本的格式,没啥好讲的。
再来看第3-6行:
if [ $# -eq 0 ]
then
vi
fi
这是是判断执行 vii 的时候带不带参数,假如不带参数,那么就直接启动 vi
再来看第8-16行:
if [ $# -eq 1 ]
then
suffix=`echo $1 | sed "s/\(.*\)\(\..\)$/\2/"`
if [ $suffix != ".c" ] || [ -e $1 ]
then
vi $1
exit
fi
fi
这是在带且仅带一个参数的情况下,比如 vii hello.c 或者 vii hello.txt 的时候,判断文件的后缀suffix,如果后缀是不是 .c 或者文件本身已经存在,那么就直接用 vi 打开。否则,要创建的文件一定是一个不存在并且后缀是 .c 的文件,此时就可以进入下面的代码。
再来看第19-28行:
sample="/bin/sample.c"
if [ ! -e $sample ]
then
echo "$sample is NOT exist"
exit
else
cp $sample $1
vi $1
fi
sample.c 就是一个写好了头文件、main函数的程序框架模板,并放置到 /bin 下。直接将这个模板文件 cp 到当前目录,并用 vi 打开这个模板。
本文介绍了一个名为vii的Shell脚本,它能在用户创建新的C程序文件时自动填充基本的程序框架代码。通过简单的命令行操作,vii能够检查文件后缀并依据特定条件决定是否应用模板。
&spm=1001.2101.3001.5002&articleId=51361113&d=1&t=3&u=74a3a1d6da3248ffb01a88fc349fdf80)
8639

被折叠的 条评论
为什么被折叠?



