Czy rozszerzenie znaku wieloznacznego w Bash jest gwarantowane w kolejności alfabetycznej? Jestem zmuszony podzielić duży plik na 10 Mb, aby mogły zostać zaakceptowane przez moje repozytorium Mercurial.
Pomyślałem więc, że mogę użyć:
split -b 10485760 Big.file BigFilePiece.
a następnie zamiast:
cat BigFile | bigFileProcessor
Mógłbym zrobić:
cat BigFilePiece.* | bigFileProcessor
Na swoim miejscu.
Jednak nie mogłem znaleźć nigdzie, co gwarantowałoby, że rozwinięcie gwiazdki (aka wildcard, aka *) zawsze będzie w kolejności alfabetycznej, tak aby .aabyło wcześniej .ab(w przeciwieństwie do kolejności znaczników czasu lub czegoś podobnego).
Czy są jakieś wady mojego planu? Jak duży jest koszt wydajności catwspólnego utworzenia pliku?
sortjeśli potrzebujesz dodatkowej manipulacji zamówieniem.
hg commitna Npliku MB wymaga około 3 * NMB pamięci RAM i hg updatewymaga około 2 * NMB pamięci RAM. Dotyczy to Mercurial 1.5 w systemie Linux.