📄 local.c
字号:
/* local.c * * This file is part of ftp. * * * 01/25/96 Initial Release Michael Temari, <temari@ix.netcom.com> */#include <sys/types.h>#include <sys/stat.h>#include <stdio.h>#include <unistd.h>#include <string.h>#include <stdlib.h>#include <errno.h>#include "ftp.h"#include "local.h"static char line2[512];_PROTOTYPE(static void dodir, (char *path, int full));int DOlpwd(){ if(getcwd(line2, sizeof(line2)) == (char *)NULL) printf("Could not determine local directory. %s\n", strerror(errno)); else printf("Current local directory: %s\n", line2); return(0);}int DOlcd(){char *path;int s; path = cmdargv[1]; if(cmdargc < 2) { readline("Path: ", line2, sizeof(line2)); path = line2; } if(chdir(path)) printf("Could not change local directory. %s\n", strerror(errno)); else DOlpwd(); return(0);}int DOlmkdir(){char *path;int s; path = cmdargv[1]; if(cmdargc < 2) { readline("Directory: ", line2, sizeof(line2)); path = line2; } if(mkdir(path, 0777)) printf("Could not make directory %s. %s\n", path, strerror(errno)); else printf("Directory created.\n"); return(0);}int DOlrmdir(){char *path;int s; path = cmdargv[1]; if(cmdargc < 2) { readline("Directory: ", line2, sizeof(line2)); path = line2; } if(rmdir(path)) printf("Could not remove directory %s. %s\n", path, strerror(errno)); else printf("Directory removed.\n"); return(0);}int DOllist(void){ dodir(".", 1);}int DOlnlst(void){ dodir(".", 0);}int DOlshell(void){ system("$SHELL");}static void dodir(path, full)char *path;int full;{char cmd[128];static char name[32]; tmpnam(name); if(full) sprintf(cmd, "ls -l %s > %s", path, name); else sprintf(cmd, "ls %s > %s", path, name); system(cmd); sprintf(cmd, "more %s", name); system(cmd); sprintf(cmd, "rm %s", name); system(cmd);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -