python作业:select版本FTP

前言

    此代码仅在Windows下测试成功,linux平台暂未测试。

    若存在问题,烦请指正。

      

selectFTP主要是由三部分组成:服务器端、客户端、管理端。本文主要就是介绍以上三部分内容。

系统初始配置

    管理员账号

      用户名:admin 密码:password

    用户账号:

      用户名:zhangsan 密码:123

      用户名:lisi        密码:123

    服务器地址:

      IP:127.0.0.1  Port:8808

服务器端

服务器端主要是处于长期运行监控状态。在调用启动之后,即无需再次操作。

涉及文件目录:

        

    

    Bin文件夹:主要是放置的服务器启动文件,运行该文件夹下的start文件即可启动服务器

    Core文件夹:主要存放服务器程序的核心部分,涉及文件的作用如下:

                         Heart.py   主要是服务器与终端的连接方式设定,内部设有相应功能模块

                     Hfunc.py    此文件存储了两个函数,record是设定的服务器log日志显示和存储的形式,judge_path是判断当前路径是否存在,若不存在则创建。

                        Standcode.py 存放了部分标准码,因程序是在高级FTP上更改的,故而不是所有标准输出都存在标准码,未能做到标准的输出语言与程序分离。

    Data文件夹:主要是存放数据,涉及的文件夹和文件作用如下:

            Conf文件夹:存放configure.py文件,此文件作用是默认参数配置,默认内容如下图:

              

        此处存放有当前服务器监控的地址和端口,可更改此处来实现实际需要。

        另一个较为重要的是管理员的账号和密码,此程序当前只支持手动更改管理员账号和密码,管理员账号和密码是由管理员程序使用的,普通用户程序使用无效。

        Docs文件夹:此文件夹主要存放的是客户上传到服务器的文件,存放的原则是按照用户名来创建相应的文件夹。

        Logs文件夹:此文件夹下存放的是系统日志,系统运行之后会按照日期生成对应的日志文件,文件名形式为:年-月-日.log

        Users文件夹:此文件夹下存在两个文件,一个是Quota.txt,存放的是用户当前允许使用的配额。一个是UserAuth.txt,存放的是注册用户的信息。

客户端:

组成:

      

      客户端部分涉及到的是selectClient,此文件夹下主要是有Bin和Core两个文件夹组成。

      Bin文件夹下放置程序开始的文件Start.py;Core文件夹下放置程序的核心文件CCore.py

      功能:

             客户端主界面如下:

      

      普通用户主要涉及以下功能:

        输入错误的命令会得到相应的命令提示,输入help也会得到相应的命令提示,但仅为简单命令提示,如图:

          

        

        具体命令格式请参考如下说明:

          1、 put,上传文件

            

            语法: put 文件名

            PS. 此处的进度条仅支持在cmd环境下显示。

          2、get  下载文件

            

            语法: 1、 get 原文件名  目标文件地址和目标文件名

                     2、get 原用户名

              此处的进度条仅支持在cmd环境下显示。

              若不同账号下载相同文件到同一个地方,则文件末尾会随机添加数字,保证源文件不被覆盖。

                             不指定下载目录,则系统自动选择当前运行文件夹:

                

              提供了目的文件地址的,会自动下载到指定目录:

                

          3、创建目录

              

                语法: mkdir 文件夹名

          4、删除目录

              

              语法:rm 文件夹名/文件名

          5、遍历当前目录

              

              语法:ls

          6、切换目录

              

                语法:cd 文件夹名。若需返回上层目录,则可以使用 cd ..来进行切换

              

          7、显示当前所在目录的信息

              

                语法:pwd

          若需要退出,可直接输入“bye”退出程序

管理端

  组成

      

      管理端部分涉及到的是selectAdmin,此文件夹下主要是有Bin和Core两个文件夹组成。

      Bin文件夹下放置程序开始的文件start.py;Core文件夹下放置程序的核心文件Heart.py

      功能:

        管理员需要使用专用端与服务器进行通信,管理员界面显示的主要功能如下:

         

        

        1、 注册用户

          可注册允许登录ZFTP的普通用户账号

        2、 删除用户

          可删除当前已存在的普通用户账号

        3、 查看用户

          可查看当前已存在的普通用户账号。

        4、 修改配额

          可修改注册用户的空间配额值

        5、 退出

          退出系统

代码链接:

      链接:https://pan.baidu.com/s/1jH8z0sY 密码:dqni

      

原文地址:https://www.cnblogs.com/mstzkot/p/8153786.html