I have a directory with image files foo_0.jpg
to foo_99.jpg
. I would like to copy files foo_0.jpg
through foo_54.jpg
.
Is this possible just using bash wildcards?
I am thinking something like cp foo_[0-54].jpg
but I know this selects 0-5
and 4
(right?)
Also, if it is not possible (or efficient) with just wildcards what would be a better way to do this?
Thank you.
I like glenn jackman answer, but if you really want to use globbing, following might also work for you:
In extended globbing
+()
matches one or more instances of whatever expression is in the parentheses.Now, this will copy ALL files that are named
foo_
followed by any number, followed by.jpg
. This will includefoo_55.jpg
,foo_139.jpg
, andfoo_1223218213123981237987.jpg
.On second thought, glenn jackman has the better answer. But, it did give me a chance to talk about extended globbing.
ls foo_[0-9].jpg foo_[1-4][0-9].jpg foo_5[0-4].jpg
Try it with ls and if that looks good to you then do the copy.
I assume you want to copy these files to another directory: