📄 parse_cmd.c
字号:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include "input_check.h"#include "parse_cmd.h"int parse_cmd(char *argv1, char *argv2, command *cmd){ int flag1=0,flag2=0; char *p,*q; char *f_name; for(p=argv1; *p!='\0'; p++) if(*p==':'){ flag1=1; break;} for(q=argv2; *q!='\0'; q++) if(*q==':'){ flag2=1; break;} if(flag1==1 && flag2!=1){ /*** get ****/ strncpy(cmd->IP,argv1,p-argv1); cmd->IP[p-argv1]='\0'; strcpy(cmd->servpath,p+1); sscanf(argv2,"%s",cmd->clientpath); if(cmd->clientpath[strlen(cmd->clientpath)-1] != '/') strcat(cmd->clientpath,"/"); if(client_checkDIR(cmd->clientpath)!=0){ /*** cheak the Directory ***/ return 1; } if(checkIP(cmd->IP)!=0){ /******** cheak IP *******/ return 1; } cmd->type=1; for(p=argv1; *p!='\0'; p++) if(*p=='/') f_name=p; f_name++; strcat(cmd->clientpath,f_name); } else if(flag2==1 && flag1!=1){ /*** put ***/ strncpy(cmd->IP,argv2,q-argv2); strcpy(cmd->servpath,q+1); sscanf(argv1,"%s",cmd->clientpath); if(cmd->servpath[strlen(cmd->servpath)-1] != '/') strcat(cmd->servpath,"/"); if(client_checkfile(cmd->clientpath)!=0){ /*** cheak the file name ***/ return 1; } if(checkIP(cmd->IP)!=0){ /******** cheak IP *******/ return 1; } cmd->type=0; for(p=argv1; *p!='\0'; p++) if(*p=='/') f_name=p; f_name++; strcat(cmd->servpath,f_name); } else{ printf("input error\n"); return 1; } return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -