Если это большое количество маленьких файлов, вы не хотите возиться с огромным количеством аргументов.
Поскольку большинство оболочек UNIX расширяют символы подстановки в алфавитном порядке, вы должны использовать:
cat 1.tgz.? 1.tgz.?? 1.tgz.??? >1.tgz
Предполагается, что существует от 100 до 999 файлов включительно, отрегулируйте аргументы для обработки более или менее (например, добавьте 1.tgz. ????, если между 1000 и 9,9999 включительно). Вы не достигнете лучшей производительности, поскольку ваша узкая местность - это скорость диска, которая всегда будет медленнее, чем код, работающий на CPU.
Единственные другие возможности, о которых я могу подумать:
- создать 1.tgz на отдельном физическом диске. Это может дать вам преимущество чередования обращений к диску.
- запустите от имени пользователя root и используйте
nice
для увеличения вашего приоритета (подробности см. man nice
). Это повысит вашу мощность и увеличит нагрузку на процессор, но опять же, если вы связаны с дисковым вводом / выводом, это не сильно поможет.