标签:
最近很多同学在看我视频教程的时候,对 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 打开这个模板。
标签:
原文地址:http://blog.csdn.net/vincent040/article/details/51361113