/
/
usr/
lib64/
lib64/
/
lib64/
/
python2.7/ó
àœSec @ s÷ d Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z d „ Z d a d a
d a d a d a
d d d g Z d
„ Z d „ Z d „ Z d
d d „ ƒ YZ d „ Z d „ Z d „ Z e d k ró e ƒ n d S( s— Mirror a remote ftp subtree into a local directory tree.
usage: ftpmirror [-v] [-q] [-i] [-m] [-n] [-r] [-s pat]
[-l username [-p passwd [-a account]]]
hostname[:port] [remotedir [localdir]]
-v: verbose
-q: quiet
-i: interactive mode
-m: macintosh server (NCSA telnet 2.4) (implies -n -s '*.o')
-n: don't log in
-r: remove local files/directories no longer pertinent
-l username [-p passwd [-a account]]: login info (default .netrc or anonymous)
-s pat: skip files matching pattern
hostname: remote host w/ optional port separated by ':'
remotedir: remote directory (default initial)
localdir: local directory (default current)
iÿÿÿÿN( t fnmatchc G s8 t j t _ x | D] } | GHq Wt GHt j d ƒ d S( Ni ( t syst stderrt stdoutt __doc__t exit( t argst msg( ( s/ /usr/lib64/python2.7/Tools/scripts/ftpmirror.pyt usage s
i i t .s ..s .mirrorinfoc C s y# t j t j d d ƒ \ } } Wn t j k
rE } t | ƒ n Xd } d } d } | sk t d ƒ n | d } d } d | k r® | j d d ƒ \ } } t | ƒ } n y7 t j ƒ j | ƒ } | d k rä | \ } } } n Wn t j
t f k
rn Xx| D]ü \ } }
| d k r*|
} n | d k r?|
} n | d k rT|
} n | d
k rmt d a n | d k r‚d a n | d k r—d a
n | d
k r¿d a d a t j d ƒ n | d k rÔd a n | d k réd a n | d k r t j |
ƒ q q Wd } d } | d rZ| d } | d rZ| d } | d rWt d ƒ qWqZn t j ƒ }
t rŽd | | r‚d | p…d f GHn |
j | | ƒ t sÒt r¼d | p¶d GHn |
j | | | ƒ n t ràd GHn |
j ƒ } t d k r
d Gt | ƒ GHn | r|t d k r.d t | ƒ GHn |
j | ƒ t d k rOd GHn |
j ƒ } t d k r|d Gt | ƒ GHq|n t |
| ƒ d S( Ni s a:bil:mnp:qrs:vt s hostname missingi t :s -ls -ps -as -vs -qs -is -ms *.os -ns -rs -si i s too many argumentss Connecting to '%s%s'...s :%ds Logging in as %r...t anonymouss OK.s PWD =s cwd(%s)( t getoptR t argvt errorR t splitt intt netrct authenticatorst Nonet NetrcParseErrort IOErrort verboset interactivet mact nologint skippatst appendt rmokt ftplibt FTPt connectt logint pwdt reprt cwdt mirrorsubdir( t optsR R R! t passwdt accountt hostt portt autht ot at remotedirt localdirt fR" ( ( s/ /usr/lib64/python2.7/Tools/scripts/ftpmirror.pyt main, s– #
c # C s” | j ƒ } | rw t j j | ƒ rw t r= d Gt | ƒ GHn y t | ƒ Wqw t j k
rs } d Gt | ƒ GHd SXn t j j | d ƒ } y t | d ƒ j
ƒ } Wn t k
rÀ } d } n Xy t | ƒ } Wn, t
t f k
rÿ d Gt | ƒ GHi } n Xg } g } t r!d | f GHn | j d | j ƒ g } x| D]}
t d k red
Gt |
ƒ GHn t r©|
j ƒ } d } | d d
k r | d } d } n d }
n¶ |
j d d ƒ } t | ƒ d k rçt d k rAd GHqAqAn | d j ƒ } | j d ƒ } | d k rHt d k r-d | f GHn | | d } | | } n | d d !}
| d } d } xS t D]K } t | | ƒ rlt d k rd Gt | ƒ Gd Gt | ƒ GHn d } PqlqlW| rÇqAn | d d k rt d k rõd Gt | ƒ GHn | j | ƒ qAn | j | ƒ | j | ƒ rX| | |
k rXt d k rAd Gt | ƒ GHqAqAn t j j | | ƒ } t j j | d | ƒ } t rÉt d | | ƒ } | sÉ| j | ƒ sAd | |