python day8 FTP 作业

目录如下: (python3 程序)

github地址如下:   https://github.com/liang2580/FTP2

[[email protected] ~]# tree FTP2/FTP2/
├── FTPClient
│   ├── 123
│   ├── ftp_client.py   ###客户端程序 启动程序
│   ├── __init__.py
│   ├── liang
│   └── te
├── FTPServer
│   ├── bin
│   │   ├── ftp_server.py   #### server端的入口程序,
│   │   └── __init__.py
│   ├── conf
│   │   ├── accounts.cfg         #这个是用户配置文件
│   │   ├── da.py
│   │   ├── __init__.py
│   │   ├── __pycache__
│   │   │   ├── __init__.cpython-36.pyc
│   │   │   ├── __init__.cpython-37.pyc
│   │   │   ├── settings.cpython-36.pyc
│   │   │   └── settings.cpython-37.pyc
│   │   └── settings.py        ###这个是系统配置文件
│   ├── core
│   │   ├── ftp_server.py      # 主逻辑代码
│   │   ├── main.py            # 核心入口
│   │   └── __pycache__
│   │       ├── ftp_server.cpython-36.pyc
│   │       ├── ftp_server.cpython-37.pyc
│   │       ├── main.cpython-36.pyc
│   │       └── main.cpython-37.pyc
│   └── home
│       ├── __init__.py
│       └── liang       # 用户加目录
│           ├── 12
│           ├── 123
│           ├── 2
│           ├── 4
│           ├── 456
│           ├── 55
│           ├── 66
│           │   └── aa
│           ├── liang
│           ├── liang2580
│           └── token
├── __init__.py
└── README.md
README.md 介绍

#这是一个python 的FTP的一个小玩意

运行的话。

Server 端的方式是这样的  默认端口是9999

[[email protected]_client FTP]#  python3 FTPServer/bin/ftp_server.py start

start 是启动的方式

客户端连接的话

[[email protected]_client FTP]# python3 FTPClient/ftp_client.py -s 127.0.0.1 -P9999 -uliang -pabc123

默认的账户密码 liang abc123 参数解释一下 -s 代表服务器IP地址 -P 端口 -u 用户名 -p 密码

具有上传 下载 不行就进去help [liang]$:help [‘help‘]

    get filename    #get file from FTP server
    put filename    #upload file to FTP server
    ls              #list files in current dir on FTP server
    pwd             #check current path on server
    cd path         #change directory , same usage as linux cd command
    touch           # touch file
    rm              # rm file  rm director
    mkdir           # mkdir direcotr

[liang]$:

支持用户认证 、 文件上传、 文件下载、 文件建立、 文件夹建立、 删除、 这些功能。没有写log日志。等下次更新一下,加入一些压缩 ,日志等功能

原文地址:https://www.cnblogs.com/liang2580/p/8467582.html

时间: 2024-10-10 13:17:25

python day8 FTP 作业的相关文章

python之ftp作业【还未完成】

作业要求 0.实现用户登陆 1.实现上传和下载 3.每个用户都有自己的家目录,且只可以访问自己的家目录 4.对用户进行磁盘配额,每个用户的空间不同,超过配额不允许下载和上传 5.允许用户在指定的家目录随意切换目录 6.允许用户在自己的家目录切换目录 7.允许上传和下载文件,并判断文件的一致性 目前还未终稿,还在持续优化中 客户端核心代码 import socket import os import hashlib import subprocess import json HOST = "127

Python学习笔记——基础篇【第七周】———FTP作业(面向对象编程进阶 & Socket编程基础)

FTP作业 本节内容: 面向对象高级语法部分 Socket开发基础 作业:开发一个支持多用户在线的FTP程序 面向对象高级语法部分 参考:http://www.cnblogs.com/wupeiqi/p/4766801.html metaclass 详解文章:http://stackoverflow.com/questions/100003/what-is-a-metaclass-in-python 得票最高那个答案写的非常好 Socket 编程 参考:http://www.cnblogs.co

python day8 学习整理

今天的学习内容如下: 1.上节课复习 面向对象的三大特性:继承,多态,封装 绑定方法与非绑定方法 反射 2.面向对象的高级用法1 __str__,属于类的内置方法和__init__一样,比如说你定义了一个类 1 class Foo: 2 def __init__(self,name,age): 3 self.name = name 4 self.age = age 5 6 obj = Foo('egon',18) 7 print(obj) ###会打印 出obj是类Foo下面的一个对象,打印内存

python基础周作业

python基础周作业 1.执行python脚本的两种方法 脚本前面直接指定解释器 在脚本开始前声明解释器 2.简述位,字节的关系 每一个字节占用八个比特位 3, 简述ascii.unicode.utf- ‐8.gbk的关系 utf--‐8 <-- unicode <-- gbk <-- ascii 按此方向兼容 4..请写出"李杰"分别用utf- ‐8和gbk编码所占的位数 "李杰" 占用utf -8 占6字节 , gbk 占用4字节 5.pyt

Python学习day5作业-ATM和购物商城

Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM: 指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆,用户间转帐 支持多用户 管理员可添加账户.指定用户额度.冻结用户等 购物车: 商品信息- 数量.单价.名称 用户信息- 帐号.密码.余额 用户可充值 购物历史信息 允许用户多次购买,每次可购买多件 余额不足时进行提醒 用户退出时 ,输出当次购物信息 用户下次登陆时可查看购物历史 商品列表分级显示 1

用shell和python实现FTP自动登陆然后上传和下载

1.ftp自动登陆下载文件 -n 不受.netrc文件的影响.(ftp默认为读取.netrc文件中的设定) !是即时文件的标志它必须成对出现,以标识即时文件的开始和结尾 binary -   设置文件传输类型为binary(二进制传输)  prompt -  开关交互提示(默认为ON) close -   结束FTP会话并返回命令行 quit -  结束FTP会话并退出FTP(功能通bye) mget -  复制一个或多个远程文件至本地 get -   复制单个远程文件到本地 put -  复制

Python实现FTP传输

文件传输过程中经常需要使用FTP服务器进行中转.Python集成了ftp模块,可以比较方便的实现一个ftp客户端.本文主要实现了递归上传或下载, 文件和文件夹.isExist可以判断ftp服务器上是否存在某一路径,如果存在,可以进一步判定出它是文件还是文件夹. __mail__ = '[email protected]' __date__ = '2014-04-23' __version = 1.2 import sys import os import time from ftplib imp

Python学习day3作业

Python学习day3作业 days3作业 作业需求     HAproxy配置文件操作 根据用户输入,输出对应的backend下的server信息 可添加backend 和sever信息 可修改backend 和sever信息 可删除backend 和sever信息 操作配置文件前进行备份 添加server信息时,如果ip已经存在则修改;如果backend不存在则创建:若信息与已有信息重复则不操作 [x] 博客 [x] 查询backend下的server信息 [x] 添加backend和se

python中FTP上传和下载

写这篇文章方便以后遇到需要定期去上传或下载时直接可以此简单模板. 1.python中FTP上传 #/usr/bin/python  # -*- coding: utf-8 -*-  import datetime import time import sys import os import ftplib def Upload_File():     ftp = ftplib.FTP()     TODAY=time.strftime('%Y-%m-%d')     FTPIP= "10.10.