每次都 vi xxx.py 然后再打 #!/usr/bin/env python 等等的程序头信息感觉有点麻烦,于是便想着写一个小程序自动生成这些头信息了,顺便在 ~/.bashrc 里写入 alias 使其作为一个命令来使用,shell 脚本并不是很熟悉,便用 C 语言来写了:
1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 #include <unistd.h> 5 6 void createFile(const char * const fileName) { 7 int exist = access(fileName, F_OK) == 0 ? 1 : 0; 8 if(exist == 0) { 9 FILE *fp = fopen(fileName, "w+"); 10 fputs("#!/usr/bin/env python\n", fp); 11 fprintf(fp, "# %s\n\n", fileName); 12 fclose(fp); 13 } 14 char *cmd = (char*)malloc(sizeof(char) * (strlen(fileName) + 6)); 15 strcpy(cmd, "vi "); 16 strcat(cmd, fileName); 17 system(cmd); 18 free(cmd); 19 } 20 21 int main(int argc, char *argv[]) { 22 int i; 23 for(i = 1; i < argc; ++i) 24 createFile(argv[i]); 25 return 0; 26 }
保存为 vipy.c,然后 gcc -o vipy vipy.c,编译好再在配置文件 ~/.bashrc 里添加上 alias vipy='~/xxx/vipy' (xxx是你存放 vipy 的目录),然后重启或者直接 alias 一下就能生效,比如我 vipy hello1.py hello2.py 就会自动生成含有 #!/usr/bin/env python 和文件名等信息的 hello1.py 和 hello2.py,并自动进入 vi 编辑界面,感觉还是挺强大的。