O que você quer alcançar parece impossível para mim.
De man dd :
bs=BYTES
read and write up to BYTES bytes at a time
ibs=BYTES
read up to BYTES bytes at a time (default: 512)
obs=BYTES
write BYTES bytes at a time (default: 512)
count=N
copy only N input blocks
skip=N skip N ibs-sized blocks at start of input
Embora bs (ou ibs e obs ) tenha um argumento BYTES que determina o tamanho do bloco , ou seja, a quantidade de bytes processados de uma só vez, o count e os parâmetros seek têm um argumento N que determina o número de blocos a processar / pular.
Assim, como dd pode sempre copiar ou pular blocos inteiros de dados (tamanho de bloco determinado por bs / ibs & obs ), você deve definir o tamanho do bloco como um valor pelo qualskip offset e o count tamanho são divisíveis sem resto.