On Thursday 06 September 2001 10:05, F�lix Hauri wrote:
> $ REPER=$(echo -en \\211\\120\\116\\107)
> $ ligne=$(grep -ab $REPER $FILE 2>/dev/null|tr \\000-\\040 \ )
> $ offset1=${ligne%%:*}
> $ ligne=${ligne#*:}
> $ ligne=${ligne%${REPER}*}
> $ offset=$(( $offset1 + ${#ligne} ))
>
> voire:
>
> $ REPER=$(echo -en \\211\\120\\116\\107)
> $ ligne=$(grep -ab $REPER $FILE 2>/dev/null|tr \\000-\\040 \ )
> $ offset=$(( ${ligne%%:*} +
> $(echo -n "$ligne"|sed -e "s/^.*://g" -e "s/$REPER.*$//g"|wc -c) ))
>
> ... on s'amuse comme on peut:)
:-), mais j'attire ton attention sur le fait que grep et sed sont destines a
travailler sur des fichiers "lignes". Sauf erreur, le buffer de lecture de
sed est fixe a 1024 bytes (BUFSIZ). Ce qui est parfois limitant dans du
binaire. Je me suis deja plante avec des fichiers binaires et sed. Depuis je
fais du C dans ce genre de cas.
Daniel
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.