У меня есть файл крупного текста, что я должен разделить на серию меньших (менее чем 1 МБ) файлы. Это кажется этим split
то, что я хочу здесь.
Однако, если я пробую следующее (использующий 900k как предел для предоставления некоторого буфера перед жестким пределом 1 МБ):
split -a 2 -b 900k total.sql createtables_
Это сделает каждую часть точно 900k (кроме последней части), скорее всего, разделяя строки в местах, где это разделяет файл.
Так, есть ли способ заставить его только разделить на границах строки? Другими словами, имейте его, делают части максимально близко (не переходя) предел, указанный в -b
аргумент, гарантируя его только разделяет на границах строки?
Или единственная опция использовать -l
опция разделить, чтобы разделить на основе количества строки и просто использовать метод проб и ошибок для нахождения параметра, чем сохраняет все файлы под пределом?
Или split
не правильный инструмент для использования?
split -l
является лучшим, можно сделать исходно на Mac OS X. С GNU coreutils, можно использовать split -C 900k
. Можно установить GNU coreutils на OSX, например, через Порты Darwion или Fink или MacPorts.