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

Antwort per Email an