Команда или скрипт для чтения двоичного файла и пропуска некоторых байтов каждые X байтов

Команда или скрипт для чтения двоичного файла и пропуска некоторых байтов каждые X байтов

Я пытаюсь найти команду оболочки Android, которая может читать файл, но при этом имеет возможность пропускать, например, 512 байт каждые 1024 байта.

Существует ли такая команда и доступна ли она для устройств Android?

Я посмотрел надддокументацию, но не смог понять, можно ли использовать dd для этой цели. Вы заставляете dd пропускать байты в начале файла, вы можете заставить его читать X байтов из файла, но я не вижу, как получить эту функцию, которую я описал.

РЕДАКТИРОВАТЬ:

Для моих целей команда/скрипт должны выводить данные на stdout, а обработка будет считывать вывод как поток, поэтому это будетнетбыть чем-то вроде"cat файл, выполнить обработку, cat файл". Это как"пока верно; выполнить cat файла; выполнено | обработка".

Список доступных команд здесь:http://www.busybox.net/downloads/BusyBox.html

решение1

Хм, это интересно. Что-то вроде этого, возможно, и осуществимо, но мне не удалось заставить это работать именно так.

while head -c 1536; do
    head -c 1024
    dostuff
done

cat file | superawesomescript

Мне это кажется более точным, но я не проверял:

сценарий:

mkfifo fifo
while dd bs=1b count=1536 of=fifo; do
    head -c 1024 fifo | processing
done
unlink fifo

Связанный контент