[EMAIL PROTECTED] wrote: > How could I resolve this? > Try to keep each answer so it makes sense on its own, please. I presume you are responding to this:
> In <[EMAIL PROTECTED]>, > [EMAIL PROTECTED] wrote: > >> > if __name__ == "__main__": >> > bucket_name = raw_input('Name of the bucket you wish the files to be >> > placed into? ') >> > update_s3() >> > >> > >> > Basically I pipe some files into the script - so would this cause a >> > linebreak? > > Yes of course. `raw_input()` is reading from `stdin` so the very first > line you pipe in will be assigned to `bucket_name`. > from Marc 'BlackJack' Rintsch? Essentially you seem to want to use standard input for two separate purposes: one to provide the name of a bucket (which it appears you would like to specify interactively) and the other to provide a list of filenames that your script has to process. I would suggest in that case providing the bucket name as a command-line argument. That way standard input can be limited to communicating filenames, and your pipeline doesn't need to contain two separate types of information. Your code would then become (without error checking): if __name__ == '__main__': import sys bucket_name = sys.argv[1] update_s3() I assume from this code, by the way, that update_s3() makes use of the bucket name as a global variable. While this will work it isn't best practice. You might want to consider passing bucket_name as an argument to update_s3() (and you won't need to change the code of update_s3() if you call the argument bucket_name too). Hope this serves to help rather than confuse. regards Steve -- Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list