Re: datei zerhacken und per netcat verschicken
Hallo,
Am Fri, 13 May 2005, Martin Dickopp schrieb:
>David Haller <lists@dhaller.de> 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
Reply to: