Извлечение строк из смещения файла

#linux #string #bash #command-line

#linux #строка #bash #командная строка

Вопрос:

Есть ли способ использовать команду «strings» для файла, чтобы она извлекала строки из определенного смещения?

Я пытался использовать dd, а затем строки, но, похоже, он работает медленнее, чем ожидалось —

 dd if=/tmp/bin of=/tmp/out skip=13000 count=140000 iflag=skip_bytes,count_bytes
 

Существует ли какой-либо оптимизированный способ извлечения строк из определенного смещения в файле?

Комментарии:

1. Что вы подразумеваете под «кажется, медленнее, чем ожидалось»? Вы можете использовать строки в качестве фильтра и просто делать dd ... | strings . Если не считать раздражающего баннера, который dd печатает в stderr, это должно работать просто отлично. Или используйте perl или любой другой инструмент для получения нужных данных и передачи их в strings

2. @WilliamPursell Это происходит медленнее, чем при использовании python для открытия файла, перехода к смещению и копирования данных в другой файл

3. Скрипт на Python, который выполняет всю работу, которую вы в нем кодируете, почти всегда будет быстрее, чем серия команд bash.