
strncpy(file_name, buffer,strlen(buffer) >FILE_NAME_MAX_SIZE ?FILE_NAME_MAX_SIZE : strlen(buffer))
根据变量命名规则,估计大概的意思就是从输入(buffer)中获取文件名;如果这个文件名的长度大于FILE_NAME_MAX_SIZE,那么截取FILE_NAME_MAX_SIZE个字符作为文件名;否则buffer中的字符全是文件名
1.在windows系统下下载putty软件,它能远程连接到linux服务器上,下载安装包后解压会得到以下的目录结构2.将上述文件夹中的pscp.exe文件复制到系统C:\Windows\System32目录结构下,保证用dos访问得到。
3.按住win+r键,输入cmd调出dos窗口,在窗口中按照以下格式输入:
pscp 文件在windows系统的路径 linux系统用户名@服务器Ip:/保存的路径
举个例子:pscp a.txt ubuntu@182.92.82.82:/home/ubuntu
4.之后点击回车,在输入服务器密码后,文件就传输过去啦,可在linux服务器对应的目录上找到相应的文件了。
5.当然还有一种更简单的方法,在windows系统上安装winscp软件,运行后如图所示
6.输入用户名密码后,登陆成功进入文件系统,图形化界面 *** 作,直接对要传输的文件进行拖拽处理,文件就很顺利的传输到服务器上了.
我提供的代码如下,自己补充main函数哈,希望能够帮到你:)//相关头文件:
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
发送方send:
void fifo_pro()
{
char s[128]
int fd
FILE *fp
fp = fopen("./a.txt", "r")
mkfifo("/tmp/fifo.tst", 0644)
fd = open("/tmp/fifo.tst", O_WRONLY)
while(fgets(s, 127, fp) != NULL) {
write(fd, s, strlen(s))
//printf("%s",s)
}
close(fd)
fclose(fp)
unlink("/tmp/fifo.tst")
}
接收方get:
char s[128]
int fd = open("/tmp/fifo.tst", O_RDONLY)
int fd2 = open("./b.txt", O_WRONLY)
memset(s, 0, 128)
while(read(fd, s, 128) >0) {
printf("%s", s)
write(fd2, s, 128)
}
close(fd2)
close(fd)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)