ftp-client-2_fclient2-程序员宅基地

技术标签: ftp客户端  python  Python基础  python-ftp  

编程语言:python 2.7
主要模块:ftplib

使用cmd模块实现交互,没有完整的异常处理,根据实际情况修改!

#coding=utf-8
from cmd import Cmd  
from ftplib import FTP
import sys,os
target_host="192.168.142.134"
target_port="2121"
ftp_user="user"
ftp_pass="12345"
timeout=100 
def login_server():
    try:
        f=FTP()
        f.set_debuglevel(1)
        f.connect(host=target_host, port=target_port,timeout=timeout)
        f.login(user=ftp_user,passwd=ftp_pass)
        f.getwelcome()
        return f
    except:
        print "login failed !"
        sys.exit(0)    
class ftp_cmd(Cmd):
    def __init__(self):
        Cmd.__init__(self)
    def do_cls(self,line):
        os.system("cls")
    def do_local(self,line):
        os.system("dir")    
    def do_open(self,line):
        f=login_server()
        self.f=f
    def do_pwd(self,line):
        self.f.pwd()
    def do_cd(self,line):
        self.f.cwd(line)
    def do_mkdir(self,line):
        self.f.mkd(line)
    def do_rmdir(self,line):
        self.f.rmd(line)
    def do_dir(self,line):
        self.f.dir()
    def do_rename(self,line):
        filename=str(line).split(' ')
        self.f.rename(filename[0],filename[1])
    def do_del(self,line):
        self.f.delete(line)
    def do_quit(self,line):
        self.f.quit()
        sys.exit(0)
    def do_close(self,line):
        self.f.close()
        sys.exit(0)
    def do_upload(self,line):
        line=open(line,'rb')
        self.f.storbinary('STOR %s'%line,line)
        line.close()
    def do_download(self,line):
        filename=open(line,'wb')
        self.f.retrbinary('RETR %s'%line,filename.write)
        filename.close()
    def do_abort(self):
        self.f.abort()
def main():
    global target_host
    global target_port
    global ftp_user
    global ftp_pass
    global timeout
    parameter=len(sys.argv)
    if parameter!=1:
        print "-------------------------------------"
        print "Warnning : your parameters is illegal"
        print "-------------------------------------"
        sys.exit(0)
    else:
        ftp_cmd().cmdloop()
if __name__=='__main__':
    main()
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ShadowFlow/article/details/51549529

智能推荐

Stable Diffusion WebUI 使用 VAE 增加滤镜效果

VAE(variational autoencoder)表示变分自动编码器,它是神经网络模型的一部分,可在较小的潜在空间之间对图像进行编码和解码,从而使计算速度更快。通俗点说,可以把 VAE 理解为一种滤镜,它能让图片的色彩更加饱满,告别灰蒙蒙的感觉;同时,它还能对图片的细节进行微调,改善面部和眼部,让整体效果更加出色。在 Stable Diffusion 中,绝大部分大模型已经内置了默认的 VAE,无需再外挂 VAE 了。

IOS面试题object-c 81-90-程序员宅基地

文章浏览阅读361次。包括:NSURLRequest、NSURLCache、NSURLSession、NSURLSessionConfiguration、NSURLSessionDataTask、NSURLSessionUploadTask、NSURLSessionDownloadTask。,您可以使用 iPhone OS 上的独特的图形接口控件,按钮,以及全屏视图的功能,您还可以使用加速仪和多点触摸手势来控制您的应用。都是等效的setObject:forKey:.在其他类中,setValue:forKey:更改成员变量.

公司综合管理系统详细设计与具体代码实现-程序员宅基地

文章浏览阅读310次,点赞3次,收藏6次。1. 背景介绍1.1 公司管理系统的重要性在当今快节奏的商业环境中,高效的公司管理系统对于确保企业的顺利运营至关重要。随着公司规模的不断扩大和业务复杂度的增加,传统的手工管理方式已经无法满足现代企业的需求。因此,开发一个综合的公司管理系统来集中管理公司的各个方面,如人力资源、财务、项目、客户

基于Hog+SVM实现小狮子的识别_hog+svm小狮子-程序员宅基地

文章浏览阅读275次。1从视频中获取图片安装opencvpip3 install opencv-python# 视频分解成图片# 1 load加载视频 2 读取info 3 解码 单帧视频parse 4 展示 imshowimport cv2# 获取一个视频打开capcap = cv2.VideoCapture('1.mp4')# 判断是否打开isOpened = cap.isOpenedprint(isOpened)#帧率fps = cap.get(cv2.CAP_PROP_FPS)#宽度wid_hog+svm小狮子

android的/system/lib/libhwui.so崩溃分析和解决办法-程序员宅基地

文章浏览阅读1.2w次,点赞2次,收藏2次。直接上崩溃日志了:#00 pc 00039518 (null)#01 pc 00022ef9 /system/lib/libhwui.so [armeabi-v7a]#02 pc 00015d7d /system/lib/libhwui.so [armeabi-v7a]#03 pc 0..._libhwui.so

spring ioc原理,IoC与DI-网摘-程序员宅基地

文章浏览阅读42次。首先想说说IoC(Inversion of Control,控制倒转)。这是spring的核心,贯穿始终。所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。这是什么意思呢,举个简单的例子,我们是如何找女朋友的?常见的情况是,我们到处去看哪里有长得漂亮身材又好的mm,然后打听她们的兴趣爱好、qq号、电话号、ip号、iq号……...

随便推点

UE5 GAS开发P41-43 永久效果,去除永久效果,伤害区域,EnumClass,开始重叠与结束重叠事件

这一部分学习了怎么创建一个伤害性的地形(火焰地形,毒沼泽等都可以用这个方式创建)AuraEffectActor.h// Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "GameplayEffect.h" #include "AbilitySystem/AuraAbilitySystemComponentBase

Anaconda安装(过程详细)_anaconda安装教程-程序员宅基地

文章浏览阅读10w+次,点赞392次,收藏1.4k次。本文将详细介绍Anaconda的安装过程。_anaconda安装教程

运用Aop思想存储日志_aop操作日志思想-程序员宅基地

文章浏览阅读226次。一、Aop思想:在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。二、AOP中的相关概念Aspect(切面): Aspect 声明类似于 Java 中的_aop操作日志思想

linux编译mysql 库_【LINUX】Linux mysql数据库搭建(编译安装)-程序员宅基地

文章浏览阅读84次。版本为linux6.4,首先下载编译安装包至本地。设共享软件包地址192.168.80.10setenforce 0service iptables stop1.共享软件包mount.cifs //192.168.80.10/r /media/ 匿名访问共享文件夹cd /media/ls 查看是否挂载成功了tar xzvf mysq..._linux qt 6.4 编译mysql

用apiCloud开发应用-程序员宅基地

文章浏览阅读62次。使用apiCloud开发应用就是用html5写页面,css实现样式,js写功能。一套代码在android和ios上都能运行。节省开发周期和人员开销。代码可以放到云服务器,可以云端打包,云端更新。apicloud提供了一般开发用到的接口,封装了很多模块,在http://www.apicloud.com/dev可以看到其开发文档。缺点:与原生开发相比较对目前对底层的操作还没有那个么的得心应..._什么应用是apicloud开发的

G-sensor概述及常用芯片整理_int1_src lis2dh12 csdn-程序员宅基地

文章浏览阅读5.7k次,点赞6次,收藏34次。本文对G-sensor进行整理,先介绍G-sensor的一些基本概念,再具体讲解BOSCH、ST、ADI三家的G-sensor,其中BOSCH的G-sensor重点讲BMA222E,ST的G-sensor重点讲LIS2DH12,ADI的G-sensor具体讲ADXL362。一、G-sensor概述什么是MEMSMEME(Micro-Electro-Mechanical System),..._int1_src lis2dh12 csdn