Talvez leia alguns bytes até um limite de 4k e, em seguida, um segundo comando para acrescentar o resto?
Supondo que queremos terminar em um limite de 4K (a maioria dos sistemas de arquivos parece usar buffers internos de 4K).
- Pule para a parte onde você deseja começar a ler. (bs = 1 salto = 143254)
- leia de 143254 até 143254 com bs = 1 e conte = 3990
- Leia o restante do arquivo com bs = 4k e anexe-o ao arquivo de saída. (Veja como anexar dados em um arquivo por dd aqui na SU)
Se isso for muito lento e você estiver criando scripts como uma tarefa repetitiva, você pode otimizar ainda mais fazendo leituras de 512b para os primeiros 3584 bytes (7 * 512), depois leituras de um único byte de 400-ish e o restante em tamanho 4k .
Observe que essa resposta parece uma solução alternativa. Eu vou gostar de ler as outras respostas que esta pergunta vai atrair. Talvez até mesmo uma solução limpa que apenas busque 143254 e então use opteration normal de leitura / gravação para copiar, permitindo usar padrões de sistema de arquivos ao invés de minhas suposições explícitas sobre buffers internos de 4k.