python-TCP模拟ftp文件传输

 1  #!/usr/bin/python
 2 #coding=utf-8
 3 #server
 4 from socket import*
 5 import sys,os
 6 def command():
 7     l=[ "Welcome!\n","command\n", "list\n","upload\n","download\n"]
 8     return l
 9 def list():
10     l=[]
11     for filename in os.listdir(‘.‘):
12         l.append(filename)
13     return l
14 HOST="192.168.1.33"
15 PORT=5126
16 ADDR=(HOST,PORT)
17 sockob=socket(AF_INET,SOCK_STREAM)
18 sockob.bind(ADDR)
19 sockob.listen(5)
20
21 a=[]
22 while 1:
23     sock,addr=sockob.accept()
24
25     while 1:
26         data=sock.recv(1024)
27         str=data.split(" ")
28
29         if data =="command":
30             a=command()
31             for i in a:
32                 sock.send(i)
33         elif data =="list":
34             a=list()
35             for i in a:
36                 sock.send(i)
37         elif str[0]=="upload":
38             f=open(str[1],‘w‘)
39             s=sock.recv(1024)
40             print s
41             for i in s: #range(len(str)):
42                 f.write(i)
43             print "upload is ok!"
44         elif str[0]=="download":
45             f=open(str[1],‘r‘)
46             s=f.readlines()
47             for i in s:
48                 sock.send(i)
49             print "download is ok!"
50 sockob.close()
51 sock.close()
 1 #!/usr/bin/python
 2 #coding=utf-8
 3 #client
 4 from socket import *
 5 import sys
 6
 7 HOST=‘192.168.1.33‘
 8 PORT=5126
 9 ADDR=(HOST,PORT)
10 sockob=socket(AF_INET,SOCK_STREAM)
11 sockob.connect(ADDR)
12
13 while 1:
14     data=raw_input(">",)
15     str=data.split(‘ ‘)
16     if not str:
17         break
18     elif str[0]=="upload":
19         f=open(str[1],‘r‘)
20         sockob.send(data)
21         s0=f.readlines()
22         print s0
23         for i in s0:
24             sockob.send(i)
25     elif str[0]=="download":
26         f=open(str[1],‘w‘)
27         sockob.send(data)
28         s1=sockob.recv(1024)
29         f.write(s1)
30     elif data=="command" or data=="list":
31         sockob.send(data)
32         data=sockob.recv(1024)
33         print data
34
35
36 sockob.close()
时间: 2024-11-12 09:03:31

python-TCP模拟ftp文件传输的相关文章

详解“FTP文件传输服务”安装配置实例

"FTP文件传输服务"安装配置实例 家住海边喜欢浪:zhang789.blog.51cto.com 目录 简介 ftp工作原理 常见的FTP服务 Vsftpd服务器的安装 Vsftpd.conf配置文件详解 配置FTP服务器实例 实例:配置匿名用户 实例:配置本地用户登录 实例:配置虚拟用户登录(MySQL认证) 实例:控制用户登录 实例:设置欢迎信息 分析vsftpd日志管理 FTP服务器配置与管理 简介 FTP 是File Transfer Protocol(文件传输协议)的英文简

FTP文件传输服务器(详解)

  FTP文件传输服务器 一实验目标 安装配置VSFTP 实战匿名访问VSFTP 实战用户名密码方式访问VSFTP 实战ftp虚拟帐号方式访问VSFTP   二实验环境 FTP服务端xuegod63.cn   IP192.168.1.63 FTP客户端xuegod64.cn   IP192.168.1.64   三FTP服务概述     FTP服务器File Transfer Protocol Server是在互联网上提供文件存储和访问服务的计算机它们依照FTP协议提供服务.VSFTP是一个基于

Linux网络服务04——FTP文件传输服务

Linux网络服务04--FTP文件传输服务 一.FTP连接及传输模式 1.控制连接:TCP 21,用于发送FTP命令信息 2.数据连接:TCP 20,用于上传.下载数据 3.数据连接的建立类型: (1)主动模式:服务器主动发起数据连接 首先由客户端向服务端的21端口建立FTP控制连接.当需要传输数据时,客户端以PORT命令告知服务器"我打开了某端口,你过来连接我",预算服务器从20端口向客户端的该端口发送请求并建立数据连接. (2)被动模式:服务器被动等待数据连接 如果客户端所在网络

【RL-TCPnet网络教程】第35章 FTP文件传输协议基础知识

第35章      FTP文件传输协议基础知识 本章节为大家讲解FTP(File Transfer Protocol,文件传输协议)的基础知识,方便后面章节的实战操作. (本章的知识点主要整理自网络) 35.1  初学者重要提示 35.2  FTP基础知识参考资料 35.3  FTP基础知识点 35.4  总结 35.1  初学者重要提示 FTP文件传输协议在实际项目中有比较重要的实用价值,需要初学者对FTP的基础知识也有个认识. 35.2  FTP基础知识参考资料 大家可以从以下地址获得FTP

FTP文件传输服务

FTP文件传输服务 需求描述: ? 采用FTP虚拟用户的方式,添加三个用户:zhangsan.lisi.wangwu. ? 用户访问及文件权限控制 u 开放匿名访问,任何用户均可下载服务器/var/ftp/soft/目录中的软件资料. u 用户zhangsan可以对服务器的/var/ftp/soft/目录进行上传.删除等操作. u 用户lisi可以下载服务器/var/market/目录中的市场活动.销售方案的资料. u 用户wangwu可以对服务器/var/market/目录进行上传.删除等操作

搭建FTP文件传输服务

实验要求:搭建FTP文件传输服务 实验步骤: 1.匿名访问 首先挂载并安装软件包,顺便再查看下,在启动 防火墙要关掉   然后在WIN7上远程登陆FTP 然后我在/vra/ftp/下面创建hu.txt文件, 在win7系统上连接ftp,可以下载文件(为了方便查看,将目录切换到E盘) 我在看下能不能上传,这边显示不能 在这边如果想要他能上传必须开启一些服务,进入linux系统VI编辑器配置文件 将允许匿名上传的配置选项前面的#去掉,使这条命令生效-(允许创建目录和允许上传文件)   这条是没有的,

小工具-FTP文件传输(FlashFXP4.4.2 )

小工具-FTP文件传输(FlashFXP4.4.2 ) 一.FlashFXP简介 flashfxp是一个功能强大的 FXP/FTP 软件,融合了一些其他优秀 FTP软件的优点,如像 cuteftp 一样可以比较文件夹,支持彩色文字显示:像 BpFTP 支持多文件夹选择文件,能够缓存文件夹:像 LeapFTP 一样的外观界面,甚至设计思路也差相仿佛.支持上传.下载及第三方文件续传:可以跳过指定的文件类型,只传送 需要的文件:可以自定义不同文件类型的显示颜色:可以缓存远端文件夹列表,支持FTP代理及

FTP文件传输协议(二)

FTP文件传输协议(二) 3.访问控制列表 [[email protected] vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh [[email protected] vsftpd]# cat user_list 查看用户列表的配置文件 # vsftpd userlist # If userlist_deny=NO, only allow users in this file //如果使用userlist_den

FTP 文件传输协议

FTP 文件传输协议 什么是FTP? FTP全称是文件传输协议,简单点就是通过这个协议我们可以实现文件的传输. FTP软件一般分为服务端和客服端. 常用的FTP软件 pureFTP 编译安装FTP 进入官网下载 https://www.pureftpd.org/ 具体下载地址:?[https://download.pureftpd.org/pub/pure-ftpd/releases/](https://download.pureftpd.org/pub/pure-ftpd/releases/)