[Tutor] Passing command line argument in function

Gary Taylor squeaky at sdf.lonestar.org
Tue Jun 14 05:27:56 CEST 2005

I'm trying to pass the name of a file as the first argument
to the ftp.storbinary function(?) below.  The only thing I
can get to work is the real file name hard coded as the
argument.  I've tried parenthesis, single quotes, double
quotes, and many combinations of the previous. I've tried
passing sys.argv[1] directly as well, although with fewer
I invoke this as below and the output is what I would
expect, but the file name on the ftp server is never

What is the correct way to do this? 

$ ./garyftp.py align.ps

Python 2.3.4 on Linux.

import sys
from ftplib import FTP

file_to_transfer = sys.argv[1]

ftp = FTP()
ftp.login("myusername", "mypasswd")

ftp.storbinary(stor file_to_transfer, open(file_to_transfer,"r"))

print file_to_transfer


squeaky at sdf.lonestar.org

More information about the Tutor mailing list