?? ln.c
字號:
/* * ln [ -f ] target [ new name ] */#include <sys/types.h>#include <sys/stat.h>#include "stdio.h"char *rindex();main(argc, argv)char **argv;{ struct stat statb; register char *np; int fflag = 0; char nb[100], *name=nb, *arg2; int statres; if (argc >1 && strcmp(argv[1], "-f")==0) { argc--; argv++; fflag++; } if (argc<2 || argc>3) { printf("Usage: ln target [ newname ]\n"); exit(1); } np = rindex(argv[1], '/'); if (np==0) np = argv[1]; else np++; if (argc==2) arg2 = np; else arg2 = argv[2]; statres = stat(argv[1], &statb); if (statres<0) { printf ("ln: %s does not exist\n", argv[1]); exit(1); } if (fflag==0 && (statb.st_mode&S_IFMT) == S_IFDIR) { printf("ln: %s is a directory\n", argv[1]); exit(1); } statres = stat(arg2, &statb); if (statres>=0 && (statb.st_mode&S_IFMT) == S_IFDIR) sprintf(name, "%s/%s", arg2, np); else name = arg2; if (link(argv[1], name)<0) { perror("ln"); exit(1); } exit(0);}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -