Comment faire des choses comme dd if=somefile bs=1 skip=1337 count=31337000
, mais efficacement, sans utiliser des lectures et des écritures non à 1 octet?
La solution est attendue:
- Pour être simple (pour les non-simples, je peux écrire un onliner Perl qui le fera)
- Pour prendre en charge les grands décalages et longueurs (donc les hacks avec une taille de bloc en dd ne seront pas utiles)
Solution partielle (pas assez simple, essayer la même chose avec la longueur le rendra encore plus complexe):
dd if=somefile bs=1000 skip=1 count=31337 | { dd bs=337 count=1 of=/dev/null; rest_of_pipeline; }
# 1337 div 1000 and 1337 mod 1000