On 2015-01-02 10:21, Cameron Simpson wrote:
On 02Jan2015 10:00, Ervin Hegedüs <airw...@gmail.com> wrote:
On Thu, Jan 01, 2015 at 05:13:31PM -0600, Anthony Papillion wrote:
I have a function I'm writing to delete wildcarded files in a directory.
I tried this:

def unlinkFiles():
    os.remove("/home/anthony/backup/unix*")

This doesn't seem to work because it's a wildcard filename. What is the
proper way to delete files using wildcards?

Now I didn't checked, but once I've used some like this:

def unlinkFiles():
   dirname = "/path/to/dir"
   for f in os.listdir(dirname):
       if re.match("^unix*$", f):
           os.remove(os.path.join(dirname, f))

That is a very expensive way to check the filename in this particular case.

It'll also match "uni".

Consider:

   if f.startswith('unix'):

instead of using a regular expression.

But generally the OP will probably want to use the glob module to expand the
shell pattern as suggested by others.


--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to