How do I remove/unlink wildcarded files
Cameron Simpson
cs at zip.com.au
Fri Jan 2 05:21:53 EST 2015
On 02Jan2015 10:00, Ervin Hegedüs <airween at 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.
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.
Cheers,
Cameron Simpson <cs at zip.com.au>
Each new user of a new system uncovers a new class of bugs. - Kernighan
More information about the Python-list
mailing list