Hallo,
Am Fri, 13 May 2005, Martin Dickopp schrieb:
>David Haller <[EMAIL PROTECTED]> writes:
>
>>> dd if=$1 of=- bs=584 seek=$SEEK count=1 |\
>>
>> Da fehlt die Umrechung in die Bloecke (s.u.)... Du rufst so dd fuer
>> jedes byte auf...
>
>Was meinst Du mit "Umrechung in die Bl�cke"?
Das was du nicht zitiert hast. "for SEEK in `seq 0 $SIZE`"
d.h. fuer jedes Byte der Eingabedatei wird das dd aufgerufen.
>Dieser Befehl f�hrt eine einzige Leseoperation aus, in der er 584 Bytes
>liest. Fehlerhaft ist allerdings, da� "seek" nicht im Input, sondern im
>Output Bl�cke �berspringt. Gemeint war wohl "skip".
Stimmt.
>> BLKSZ=584
>> [...]
>> dd if="$1" bs="$BLKSZ" seek="$seek" count=1 | \
>
>Abgesehen vom fehlenden "of=-", Unterschieden im Quoting und unter-
>schiedlichen Variablennamen unterscheidet sich das nicht von der Zeile,
>die Du kritisiert hattest.
Du hast's wieder nicht zitiert.
Jetzt also nochmal richtig:
====
BLKSZ=584
SIZE=`wc -c < "$1"`
BLOCKS=`echo "($SIZE / $BLKSZ)" | bc` ### das hier ist der
### Unterschied. Da seq ab 0
### kann das "+1" doch wegfallen.
for skip in `seq 0 $BLOCKS`; do
dd if="$1" bs="$BLKSZ" skip="$skip" count=1 | \
netcat -u -q 0 127.0.0.0 2006 || break
done
====
-dnh
--
NT is the only OS that has caused me to beat a piece of hardware to death
with my bare hands. -- Derry Hamilton
--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/
Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)