<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Skynet

    ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks

    什么都不說,在代碼里
    #!/usr/bin/env python
    #
    -*- encoding: utf8 -*-
    from ftplib import FTP
    import sys,os,getopt

    opts,args
    =getopt.getopt(sys.argv[1:],'hf:d:i:u:p:')

    def usage():
        
    print '''
    Help Information:
      上傳正常結束后,會在上次文件邊創建成功狀態文件夾,名稱為 [上次文件名.state ]
        -h : Show help information
        -f : local upload file   eg -> /home/user/xx/file.tar
        -d : upload to ftp path  eg -> /x/xx/xxx 
        -i : [optional] Default 122.102.xx.xx
        -u : [optional] Default xx
        -p : [optional] Default *** (xx passwd)
        
    '''


    fip
    ='122.xx.xx.xx'
    fur
    ='xx'
    fpw
    ='123'
    for o,a in opts:
        
    if o=='-h':
            usage()
            sys.exit()
        
    if o=='-f' : upload_file=a
        
    if o=='-d' : ftp_path=a
        
    if o=='-i' : fip=a
        
    if o=='-u' : fur=a
        
    if o=='-p' : fpw=a


    ftp 
    = FTP(fip)
    ftp.login(fur,fpw)

    if not ( locals().has_key('ftp_path'and locals().has_key('upload_file') ):
        usage()
        sys.exit()


    # 迭代 創建 目錄 
    to_path='/'
    for sp in ftp_path.split('/')[1:]:
        drs 
    = ftp.nlst(to_path)
        
    if to_path=='/':to_path+=sp
        
    else : to_path+='/'+sp
        
    if not to_path in drs :
            ftp.mkd(to_path)

    #到 最終 目錄下 
    ftp.cwd(to_path)


    # 上傳準備
    bufsize = 1024
    file_handler 
    = open(upload_file,'rb')
    file_name
    =os.path.split(upload_file)[1]

    # 判定是否 有 上傳完 狀態文件夾,如果有刪除
    sfile=to_path+'/'+file_name+'.state'
    if sfile in ftp.nlst(to_path):
        
    print '[Resend] delete original dir state '+sfile
        ftp.rmd( sfile )
        
    # 上傳文件
    ftp.storbinary('STOR %s' % (file_name),file_handler,bufsize)

    # 如果 上傳 文件大小不一 ,不標注 成功 上傳 狀態文件夾 
    if not os.path.getsize(upload_file) == ftp.size(to_path+'/'+file_name) :
        
    print '[Error]  upload to ftp size Different ! '
        sys.exit()

    # 上傳 成功 創建標示狀態 文件夾 
    ftp.mkd(sfile)
    file_handler.close()
    ftp.quit()




    整理 m.tkk7.com/Good-Game
    posted on 2009-09-09 10:01 劉凱毅 閱讀(1561) 評論(1)  編輯  收藏 所屬分類: python

    Feedback

    # re: ftp 上傳(py) 2009-09-22 14:07 Taylor
    download  回復  更多評論
      

    主站蜘蛛池模板: 亚洲AV美女一区二区三区| 亚洲精品亚洲人成在线观看下载| 久久精品亚洲综合| 免费无码又爽又刺激高潮软件| 久久精品亚洲男人的天堂| 黄色视屏在线免费播放| 亚洲中文久久精品无码| 中文字幕在线视频免费| 久久精品国产精品亚洲精品| 亚洲精品免费观看| 亚洲妇女水蜜桃av网网站| 野花高清在线观看免费完整版中文| 久久亚洲精品国产精品婷婷| 国产yw855.c免费视频| 一级做a免费视频观看网站| 国产∨亚洲V天堂无码久久久| 日本免费中文视频| 色婷五月综激情亚洲综合| 美女被免费视频网站a国产| a一级毛片免费高清在线| 久久亚洲免费视频| 国产一卡二卡3卡四卡免费 | 久久精品亚洲日本佐佐木明希| 午夜老司机永久免费看片| 亚洲成a人片在线观看播放| 永久免费看bbb| 两个人日本免费完整版在线观看1| 久久亚洲AV成人无码国产| 免费黄色网址入口| 中文在线观看免费网站| 亚洲三级中文字幕| 亚洲伊人久久综合中文成人网| 99国产精品视频免费观看| 亚洲AV电影天堂男人的天堂| 亚洲精品制服丝袜四区| 69成人免费视频无码专区| 国产免费黄色无码视频| 亚洲欧洲日产国码在线观看| 免费一级做a爰片性色毛片| 四虎影视成人永久免费观看视频| 亚洲国产精品无码观看久久|