Việc mở rộng một ký tự đại diện trong Bash có được đảm bảo theo thứ tự bảng chữ cái không? Tôi buộc phải chia một tệp lớn thành 10 Mb để chúng có thể được kho lưu trữ Mercurial của tôi chấp nhận.
Vì vậy, tôi đã nghĩ rằng tôi có thể sử dụng:
split -b 10485760 Big.file BigFilePiece.
và sau đó thay cho:
cat BigFile | bigFileProcessor
Tôi có thể làm:
cat BigFilePiece.* | bigFileProcessor
ở vị trí của nó.
Tuy nhiên, tôi không thể tìm thấy bất cứ nơi nào đảm bảo rằng việc mở rộng dấu hoa thị (hay còn gọi là ký tự đại diện, aka *
) sẽ luôn theo thứ tự bảng chữ cái để .aa
đi trước .ab
(trái ngược với thứ tự dấu thời gian hoặc đại loại như thế).
Ngoài ra, có bất kỳ sai sót trong kế hoạch của tôi? Làm thế nào tuyệt vời là chi phí hiệu suất của cat
ing các tập tin với nhau?
sort
nếu bạn cần bất kỳ thao tác đặt hàng bổ sung.
hg commit
trên một N
tệp MB yêu cầu khoảng 3 * N
MB RAM và hg update
yêu cầu khoảng 2 * N
MB RAM. Đây là với Mercurial 1.5 trên Linux.