Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Порезать текстовый файл кусками построчно  (Прочитано 2000 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн hesoyamatogun

  • Автор темы
  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
Есть текстовый файл из 10 к примеру строк, хочу порезать на 3 файла по 3 строки в каждом.
То-есть на выходе должно оказаться 4 файла, в первых трех по 3 строки, в последнем всего одна. Как это сделать?



ТС не появлялся на Форуме более полугода по состоянию на 09/09/2019 (последняя явка: 11/01/2019). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 09 Сентября 2019, 18:48:21 от zg_nico »

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6995
  • Luck Tales
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #1 : 12 Ноября 2017, 18:37:31 »
Код: (bash) [Выделить]
for i in `seq 1 3 $(sed -n '$=' ~/file)` ;do sed -n $i,$((i+2))p ~/file > ~/stroka_$i ; done
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн hesoyamatogun

  • Автор темы
  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #2 : 12 Ноября 2017, 18:54:40 »
Круто, а по проще никак?

Оффлайн snowin

  • Активист
  • *
  • Сообщений: 883
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #3 : 12 Ноября 2017, 19:04:04 »
Круто, а по проще никак?
man split
например:
split -l 3 <имя файла>

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6995
  • Luck Tales
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #4 : 12 Ноября 2017, 19:08:39 »
точно, split жеж)  ;D
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн ecc83

  • Старожил
  • *
  • Сообщений: 2121
  • Ubuntu Mate 22.04 LTS
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #5 : 12 Ноября 2017, 19:12:20 »
Круто, а по проще никак?

Одна строка кода, куда ещё проще то?
Проще текстовым редактором, вырезать - вставить.

Оффлайн hesoyamatogun

  • Автор темы
  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #6 : 12 Ноября 2017, 19:40:24 »
Похоже то-что нужно.
А может ли порубить текст на указанные разные части. Например несколько файлов,(три) создать из одного 600 строчного. 100,200,300 строчные.

Оффлайн snowin

  • Активист
  • *
  • Сообщений: 883
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #7 : 12 Ноября 2017, 19:50:30 »
А может ли порубить текст на указанные разные части
сначало он текст захочет порубить, а там и до голов дело дойдет
все зависит от законодательства твоей страны, если оно подобное разрешает - так тому и быть
и не плохо бы посоветоваться с религиозными деятелями и народными депутатами
а то не известно куда это тебя может завести
(на правах шутки, сори, не ударжался)

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6995
  • Luck Tales
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #8 : 12 Ноября 2017, 20:20:11 »
hesoyamatogun, подставляйте нужные значения в сплит.
а если разные значения количества строк - тут пригодится мой код выше.
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн ReNzRv

  • Старожил
  • *
  • Сообщений: 2648
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #9 : 12 Ноября 2017, 23:56:07 »
Код: (bash) [Выделить]
awk 'BEGIN{split("100 200 300", a);n=1;c=0}{c++;fn=FILENAME"_"a[n];print>>fn;if(c==a[n]&&a[n+1]){n++;c=0}}' file100 200 300 - части.
file - исходный файл.

Оффлайн hesoyamatogun

  • Автор темы
  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
Re: Порезать текстовый файл кусками построчно
« Ответ #10 : 13 Ноября 2017, 11:36:14 »
Спасибо, будем разбираться.

 

Страница сгенерирована за 0.019 секунд. Запросов: 19.