On Wednesday December 7 2016 14:57, in comp.lang.python, "BartC" <b...@freeuk.com> wrote:
> On 07/12/2016 18:02, BartC wrote: > >> If I want to run a Windows program on Linux, and that program needs to >> see *.* unexpanded, then it can't undo that expansion. The cat is >> already out of the bag. > > I mean, the genie is out of the bottle, whatever. You know what I mean, > the operation is not reversible. So, don't pull the cork. Look, Bart, in a Unix shell, the user has the option to enable or disable globbing (that action that converts the argument * into a list of files). A Unix shell can give a program exactly the same list of unaltered arguments that a Windows shell can. But, point of fact is that the feature to disable globbing is not often needed. Most Unix programs that accept filenames are happy to accept a list of filenames. There is not much call for a program to perform it's own globbing, like is required in Windows. In fact, I can only think of three Unix "commandline" programs that need shell globbing disabled: find - which performs it's own filename matching grep - which uses regular expressions to search the contents of files, and sed - which uses regular expressions to edit the contents of files. (I'm sure that there are a few more examples, though). If your argument is with Unix shell globbing, I say that you can disable it. If your argument is with Python's use of the default shell options to parse commandlines in the Popen() method, then you need to talk to the authors of Python to see if they can give you a way to alter this behaviour. Otherwise, you are just being cranky and argumentative. Stop it. Suck it up and move on. The world doesn't revolve around BartC, no matter how loud he yells. -- Lew Pitcher "In Skills, We Trust" PGP public key available upon request -- https://mail.python.org/mailman/listinfo/python-list