csplit е популярна помощна програма за команден ред на Linux, използвана за разделяне на съдържанието на файл на две. Файлът, който трябва да промените, трябва да е текстов файл с ".текст" разширение.
Командата е лесна за използване и работи добре на всички Linux дистрибуции. С използването на различни флагове, налични за csplit, можете също да промените изхода според вашите нужди.
Ето как да използвате csplit за разделяне на файл на Linux.
Какво е csplit?
Използван в Linux и други Unix-подобни операционни системи, csplit може да раздели файл на отделни файлове, определени от контекстните редове.
Основният синтаксис на командата е:
csplit[ОПЦИЯ][МОДЕЛ]
csplit срещу. разделяне
Повечето потребители на Linux обичат да използват командата split, когато става въпрос за разделяне на файл на множество по-малки файлове. Проблемът с тази команда е, че тя разчита на размера на байта или размера на реда, за да раздели файловете.
Това не е осъществимо в сценарии, при които искате да разделите файловете въз основа на тяхното съдържание, а не на техния размер. Това е моментът, когато csplit идва на помощ, тъй като разделя файла на парчета с фиксиран размер въз основа на съдържанието вместо броя на байтовете.
Как да инсталирате csplit на Linux
csplit идва предварително инсталиран на почти всички Linux дистрибуции. Ако обаче срещнете грешка „csplit: командата не е намерена“, това означава, че инструментът не е инсталиран на вашата система. За да инсталирате csplit на Ubuntu, изпълнете:
sudo apt-получавам инсталирайте coreutils
На Arch Linux изпълнете:
sudo pacman -S coreutils
За да инсталирате csplit на Fedora и RHEL:
sudo dnf Инсталирай coreutils
Как да използвате csplit на Linux
За да видите как работи csplit, създайте текстов файл на вашата система. Използвайте командата touch за създаване на празен файл.
докосванеиме на файл.текст
След като създадете файла, отворете го с нано редактора, за да промените съдържанието му.
наноиме на файл.текст
След като добавите малко съдържание към файла, натиснете Ctrl + X и тогава Y за да го запазите и затворите.
За да проверите съдържанието на файла, като използвате командата котка, стартирайте:
котешко име на файл
Използвайте командата csplit, за да разделите файл
За да разберете как работи csplit, първо погледнете съдържанието на файла, който се използва тук като пример.
Файлът съдържа девет реда от числа от 1 до 9. Ако трябва да разделите файла на две, как ще кажете на csplit кое съдържание да изпрати към първия файл и кое към другия? Това е лесно. В командата просто трябва да кажете на csplit от кой ред да започне разделянето.
Това става чрез посочване на номера на реда. Например, ако искате да разделите файла от третия ред с думата "London", ще споменете 3 в командата. Въведете командата по следния начин:
csplitиме на файл.текст 3
Тази команда незабавно ще раздели файла на две. Използвайте командата ls за да изброите цялото съдържание на директорията, за да видите изходните файлове. Ще намерите новите файлове с имената xx00 и xx01 заедно с оригиналния файл.
Използвайте командата cat, за да проверите съдържанието на двата файла.
Както можете да видите, csplit разделя файла на две части от третия ред, както е посочено в командата.
Опции на командата csplit
Ето някои от опциите на командния ред на csplit, които можете да използвате:
1. Променете префикса за изходни файлове
Известен също като префикс флаг, -f променя префикса в името на файла. Може би сте забелязали, когато csplit разделя файла, създадените нови файлове имат xx като префикс в имената на файловете. Можете да промените това, като използвате -f флаг в командата.
Например, ако искате имената на файловете да имат абв като префикс вместо xx, издайте командата по следния начин:
csplit-fабвиме на файл.текст 3
Както се вижда, след разделянето и двата файла имат абв като префикс в имената.
2. Съхранявайте файловете, когато възникнат грешки
The -к или --keep-файлове опцията не премахва изходните файлове, ако има грешка в командата csplit.
Издайте следната грешна команда:
csplit -k randomfile.txt 2 {3}
3. Променете броя на цифрите в името на файла
Използвайки тази опция, можете да кажете на командата csplit колко цифри искате да видите в името на файла след префикса. Нарича се още флаг на цифрите.
Издайте следната команда, за да запазите само една цифра в името на файла:
csplit-н 1 случаен файл.текст 2
Без -н флаг, по подразбиране ще видите две цифри в името на файла.
4. Разделяне на файла без извеждане на броя на размерите
Известен също като тихия флаг, -с flag безшумно разделя файла, без да споменава броя на размера на изходните файлове.
csplit-сслучаен файл.текст 3
5. Вижте помощ за командния ред
За да видите подробности за всички налични опции за csplit, използвайте -ч или --помогне флаг в командата.
csplit --помогне
6. Проверете номера на версията на csplit
За да видите коя версия на csplit използвате, изпълнете командата с --версия флаг:
csplit --версия
7. Пропуснете конкретен ред, докато разделяте
Можете също да използвате --потискане-съвпадение опция на командния ред за пропускане на определен ред при разделяне на файла.
csplit--потискане-съвпадениеиме на файл.текст 5
Докато създава двата файла, csplit ще игнорира петия ред и ще раздели файла от следващия ред.
Петият ред в оригиналния файл има думата "Берлин". В изходния файл „Берлин“ беше пропуснато.
Разделяне на файлове без усилие с една команда на Linux
Има много помощни програми от командния ред за управление на файлове в Linux система. Един от тях е csplit. По подразбиране е наличен на всички Linux системи. Ако не, можете просто да го инсталирате чрез командния ред.
csplit е лесен и ефективен начин за разделяне на файл, когато трябва да разделите файла въз основа на неговото съдържание. csplit идва с различни опции на командния ред, които ви предлагат гъвкавостта да приспособите изхода по желания от вас начин. Има няколко инструмента на командния ред за преглед на съдържанието на файл в Linux, ако искате да проверите файловете след разделяне.