Todos os utilitários de processamento de texto básico servem para atuar como filtros, e a maioria deve processar sua entrada como um fluxo (isto é, ler uma pequena entrada, processá-la, gravar a saída correspondente, repetir). dd
é um pouco incomum, tanto pela sua sintaxe quanto pelas opções que oferece. dd
é a única interface da shell para lseek
e, como você percebeu, é desajeitado. Quando você chegar a este ponto, é hora de mudar para uma linguagem de script mais poderosa, como Perl ou Python.