Объяснение команды csplit в Linux

csplit - это команда Linux, которая может быть использована для разделения большого файла на несколько меньших файлов/частей, в зависимости от требований пользователя. Эти части определяются контекстными строками.

linux

По умолчанию csplit разбивает файл на 1000 строк на файл и предоставляет пользователям возможность изменить количество разбиваемых строк в соответствии с их требованиями. Выходные разделенные файлы имеют имена типа "xx00" и "xx01". Команда csplit также выводит количество байт в каждом разделенном файле/фрагменте в собственный или стандартный вывод.

Синтаксис команды Csplit

Синтаксис команды csplit следующий:

ОПЦИИ в синтаксисе - это опции командной строки, которые используются для передачи параметров программе. Где FILE - имя файла, к которому пользователь хочет получить абсолютный путь.

Параметры командной строки

  • -b, --suffix-format=FORMAT использовать sprintf FORMAT вместо %02d
  • -f, --prefix=PREFIX использовать PREFIX вместо 'xx'
  • -k, --keep-files не удалять выходные файлы при ошибках
  • --suppress-matched подавлять строки, соответствующие PATTERN
  • -n, --digits=DIGITS использовать указанное количество цифр вместо 2
  • -s, --quiet, --silent не печатать подсчеты размеров выходных файлов
  • -z, --elide-empty-files удалить пустые выходные файлы
  • --help вывести справку и выйти
  • --version вывести информацию о версии и выйти

Команда sing csplit - примеры

В дальнейшем руководстве я объясню и подробно расскажу об использовании команды csplit в явном виде с каждой опцией командной строки на примерах. Для выполнения этого процесса вам необходимо выполнить следующие шаги:

Создайте файл с именем 'Demo.txt' со следующим содержимым, как показано на ниже. Используйте текстовый редактор на вашей машине и сохраните его в домашней папке.

Пользователь может также создать файл с другим именем, содержащий данные по своему выбору или по своему рабочему требованию.

Теперь напишите в терминале следующую команду для разделения файла на 2 части. Поскольку вторая часть начинается с третьей строки, в команде csplit мы напишем '3'.

После выполнения команды csplit выдаст вам количество байт в каждом разделенном файле в виде стандартного числа. Чтобы узнать, разделен ли Demo.txt на 2 файла или нет, напишите в терминале 'ls' и нажмите Enter. При нажатии enter отобразятся все файлы в домашней папке. В домашней папке вы можете увидеть 2 разделенных файла с именами 'xx00' и 'xx01'. В xx00 содержится 11 байт, а в xx01 - 35 байта.

Теперь, чтобы увидеть содержимое файлов xx00 и xx01, выполните следующую команду в терминале.

Выполнение этих команд даст вам следующий результат:

Использование опций командной строки csplit

Опция -f, -Prefix

Эта опция использует PREFIX вместо 'xx' в имени разделяемого файла. Синтаксис этой опции командной строки следующий:

В приведенной выше команде -f - это опция командной строки, 'pre' - это префикс, который будет использоваться вместо 'xx'. Пользователь может задать любое имя префикса по своему выбору. Для данного руководства я задаю 'pre'. Demo.txt - это имя файла, как описано выше в шаге 02.

Выполнив эту команду, теперь файлы названы как 'pre00' и 'pre01'.

Опция -k, --keep-files

Эта опция не удаляет выходные файлы сплита, если он столкнулся с какой-либо ошибкой. Предположим следующий пример, я пишу в терминале следующую ошибочную команду.

Поскольку приведенная выше команда содержит ошибку, но опция -k не удаляет разделенные файлы. После выполнения csplit -k Demo.txt 4 {3} я запущу другую ошибочную команду ls xx*, но на выходе все равно будут отображаться имена разделенных файлов.

Опция -n, -Digits

Эта опция устанавливает количество цифр после имени файла. Допустим, если вы установите число цифр равным 1, имя выходного файла будет xx0 вместо xx00. Синтаксис этой опции командной строки следующий:

В приведенной выше команде опция -n является опцией командной строки. Пользователь может установить любое число цифр по своему выбору. В данном руководстве я задаю значение '1'. Demo.txt - это имя файла, как описано выше в шаге 02.

Опция -z, -elide-empty-files

Эта опция удаляет пустые выходные файлы. Синтаксис этой опции командной строки следующий:

Опция -s, -quiet

Эта опция не отображает подсчет размера выходных файлов. Синтаксис этой опции командной строки следующий:

В приведенной выше команде, -s - это опция командной строки. Demo.txt.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий