Comando ou script para ler um arquivo binário e pular alguns bytes a cada X bytes

Comando ou script para ler um arquivo binário e pular alguns bytes a cada X bytes

Estou tentando encontrar um comando shell do Android que seja capaz de ler um arquivo, mas que tenha o poder de pular, por exemplo, 512 bytes a cada 1024 bytes.

Esse comando existe e está disponível para dispositivos Android?

eu olheidddocumentação, mas não consegui descobrir se é possível usar o dd para esse fim. Você faz dd pular bytes no início do arquivo, você pode fazer com que ele leia X bytes de um arquivo, mas não vejo como obter esse recurso que descrevi.

EDITAR:

Para meu propósito, o comando/script deve ser enviado para stdout, e o processamento lerá a saída como um fluxo, portantonãoser algo como"cat um arquivo, faça processamento, cat um arquivo". É como"enquanto verdadeiro; cat um arquivo; concluído | processamento".

A lista de comandos disponíveis está aqui:http://www.busybox.net/downloads/BusyBox.html

Responder1

Hum, isso é interessante. Algo assim pode ser possível, mas não consegui fazer funcionar exatamente assim.

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

cat file | superawesomescript

Isso parece mais definitivo para mim, mas não testei:

roteiro:

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

informação relacionada