FTP program works -- now how do I send the directory over?
Randy.L.Kemp at motorola.com
Thu Jul 5 10:24:53 EDT 2001
Thanks. I will try that out today.
From: Oleg Broytmann [mailto:phd at phd.fep.ru]
Sent: Thursday, July 05, 2001 9:08 AM
To: Kemp Randy-W18971
Cc: 'python-list at python.org'
Subject: Re: FTP program works -- now how do I send the directory over?
On Thu, 5 Jul 2001, Kemp Randy-W18971 wrote:
> I seem to be getting the listing of what's on my d drive in windows, rather then the binary contents. Here is what I do (the server id changed to protect the innocent:
> for filename in glob.glob('d:\programsPython\*'):
> ftp.storbinary("STOR " + filename, open(filename, 'rb'))
> List the directory contents in Unix
> ee110:/usr2/ecadtesting/tarbackups> ls
> d:\programsPython\CE H2-102000 Usage Mentor1.txt
> Why do I get the text d:\programsPython\filename?
Because glob() returns full path, so you end up running commands like
ftp.storbinary("STOR " + 'd:\\programsPython\\CE H2-102000 Usage Mentor1.txt'...
(please note double backslashes)
If you want just filenames without path you can do one of two things:
1) cd d:\programsPython (os.chdir("d:\\programsPython")) and then use
glob('*') - this will list just the curent directory
2) or cut off the file/path yourself:
for filename in glob.glob('d:\programsPython\*'):
name = string.split(filename, '\\')[-1]
ftp.storbinary("STOR " + name, open(filename, 'rb'))
> How should I change the program to get the actual files sent over?
Why do you think those funny files are not real files? It is just UNIX
didn't interpreted backslashes! :) I am sure they are your real files! Test
Oleg Broytmann http://phd.pp.ru/ phd at phd.pp.ru
Programmers don't die, they just GOSUB without RETURN.
More information about the Python-list