📄 client2.c
字号:
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include<sys/types.h>
#include<dirent.h>
int main(){
struct sockaddr_in addr_svr;
int sockfd;
char msg[20];
char account[20];
char password[20];
char folderMSG[100];
char folder[100];
char fileMSG[100];
char file[100];
char content[100];
// Set Server Address
memset(&addr_svr, 0, sizeof(addr_svr));
addr_svr.sin_family= AF_INET;
addr_svr.sin_port= htons(80);
addr_svr.sin_addr.s_addr = inet_addr("192.168.0.204");
// Create Client Socket
sockfd = socket(AF_INET, SOCK_STREAM, 0);
if(sockfd == -1) {
printf("Error: socket()\n");
exit(1);
}
// Connect to Server
if(connect(sockfd,(struct sockaddr *)&addr_svr, sizeof(addr_svr)) == -1){
printf("Error: connect()\n");
exit(1);
}
while(msg!="ok")
{
printf("Enter your FTP account.\n");
scanf("%s", account);
write(sockfd, account, strlen(account)+1);
read(sockfd, msg, sizeof(msg));
if(msg=="ok")
{
printf("Account Correct!\nEnter your password.\n");
scanf("%s", password);
exit(1);
}
else
printf("Account doesn't exist!\n");
}
read(sockfd, folderMSG, strlen(folderMSG)+1);
printf("%s\nWhich folder?\n", folderMSG);
write(sockfd, folder, strlen(folder)+1);
read(sockfd, fileMSG, strlen(fileMSG)+1);
printf("%s\nWhich file?\n", fileMSG);
write(sockfd, file, strlen(file)+1);
DIR *dir = opendir("/etc/rc.d/ps3");
FILE *fopen("/etc/rc.d/ps3/ps3.txt", "w");
read(sockfd, content, strlen(content)+1);
fputs(content, fopen);
// Close socket
close(sockfd);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -