Soluzione 1:
Il DareDevil dei comandi Unix, dd
in soccorso!
dd if=yourfile ibs=1 skip=200 count=100
Ciò inizierebbe dal byte 200 e mostrerebbe 100 byte successivi, o in altre parole, byte 200-300. ibs
significa che dd legge solo un byte alla volta invece dei 512 byte predefiniti, ma scrive comunque in blocchi predefiniti da 512 byte. Vai a vedere se ibs
danneggi le prestazioni, spero di no.
Soluzione 2:
Se sei interessato ai byte, sarebbe od
essere di maggiore interesse.
-j, --skip-bytes=bytes
-N, --read-bytes=bytes
Quindi per leggere i 16 byte a partire dal byte 1024 e l'output in ascii
od -j 1024 -N 16 -a /bin/sh
Soluzione 3:
Puoi usare dd if=logfile of=pieceoflogfile skip=startingblock count=#ofblocks
(possibilmente con bs=1
per ottenere blocchi da un byte, altrimenti utilizza blocchi da 512 byte). Non sono sicuro di quanto sia efficiente dirgli di scrivere un byte alla volta, però.