[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: datei zerhacken und per netcat verschicken



Am 2005-05-13 03:29:15, schrieb David Haller:
> Hallo,
> 
> Am Fri, 13 May 2005, Michelle Konzack schrieb:
> >Also hier wird nichts auch die Platte gekippt:
> >----8<--------------------------------------------
> >#!/bin/bash
> >
> >let SIZE=`cat $1 |wc -c`

Das macht einen arithmetischen Wert daraus

> useless use of let, useless use of cat
> 
> SIZE=`wc -c < "$1"`

Das macht aber ne Zeichenkette

man bash

Wenn Du Zeit hat den Schmöker mal durchzugehen.
Ich habe unzählige scripts in denen es zu unerwarteten
fehlern bei Deiner Version kommt.

Bei Deiner version kommt dann sowas wie "   1234" also eine Zeichen-
ketteraus, während bei mir "1234" einer ein zahlenwert rauskommt.

> >for SEEK in `seq 0 $SIZE` ; do
> >  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...

Ups, sollte

    for SEEK in `seq 0 584 $SIZE` ; do
    
sein.

> >    netcat -u -q 0 127.0.0.1 2006
> >    if [ $? == "1" ] ; then break ; fi
> 
> Useless use of test (s.u.). Ausserdem sollte das, wenn schon, dann

Nein, denn die Schleife rennt weiter wenn 'netcat'
einen Fehler hat. 'break' beendet die Schleife.

>     if test $? -ne 0; then break; fi
> 
> oder meinetwegen auch per Stringvergleich
> 
>     if test "x$?" != "x0"; then break; fi
> 
> sein. 'help test' hilft. Ausserdem sollte man beachten, ob man einen
> String oder eine Zahl vergleicht. Und das dann auch passend umsetzen.

Das macht nichts in diesem Fall (Exit Status),
kann entweder
                if [ $? == "1" ] ; then break ; fi
        oder
                if [ $? -eq 9 ] ; then break ; fi
verwenden

> Ja, bei sowas bin ich ein Pedant ;)

Abgesehen vom 'seq' funktioniert mein Script

> -dnh

Greetings
Michelle

-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/
Michelle Konzack   Apt. 917                  ICQ #328449886
                   50, rue de Soultz         MSM LinuxMichi
0033/3/88452356    67100 Strasbourg/France   IRC #Debian (irc.icq.com)

Attachment: signature.pgp
Description: Digital signature


Reply to: