Is the expansion of a wildcard in Bash guaranteed to be in alphabetical order? I am forced to split a large file into 10 Mb pieces so that they can be be accepted by my Mercurial repository.
So I was thinking I could use:
split -b 10485760 Big.file BigFilePiece.
and then in place of:
cat BigFile | bigFileProcessor
I could do:
cat BigFilePiece.* | bigFileProcessor
in its place.
However, I could not find anywhere that guaranteed that the expansion of the asterisk (aka wildcard, aka *
) would always be in alphabetical order so that .aa
came before .ab
(as opposed to be timestamp ordering or something like that).
Also, are there any flaws in my plan? How great is the performance cost of cat
ing the file together?
sort
if you need any additional order manipulation.hg commit
on aN
MB file requires about3 * N
MB of RAM andhg update
requires about2 * N
MB of RAM. This is with Mercurial 1.5 on Linux.sort
sorts lines, globbing does not return lines thussort
does not work as is.