其实,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 打开这个模板。