[linux-l] Logik von "Syntax-Fehler" in Bash
Hasko Bern
pascal.hasko.bernhard at googlemail.com
Fr Dez 27 14:12:11 CET 2013
Hallo Michael,
danke für Deine Hilfe. Allerdings stehe ich immer noch etwas auf dem
Schlauch, wie genau ich in diesem Fall einen Zeilenumbruch hinbekomme. Nach
Suche im Internet habe ich mehrere Anleitung ausprobiert, die aber nicht
funktioniert haben:
$ sudo for i in 1 2 3 4 5 \
> do hdparm -tT /dev/sda \
> done
Geht ebensowenig wenn ich && einfüge:
$ sudo for i in 1 2 3 4 5 && \
> do hdparm -tT /dev/sda && \
> done
Das > Zeichen stammt nicht von mir, sondern von Bash.
Wie genau bekomme ich denn einen Zeilenumbruch hin, so wie zum Beispiel
hier (http://www.howtux.de/index.php?article=1) funktioniert das bei mir
einfach nicht.
Danke,
Pascal
Am 27. Dezember 2013 13:02 schrieb Michael Gisbers <
m.gisbers at linux-schmie.de>:
> On Fri, 27 Dec 2013 12:47:09 +0100
> Hasko Bern <pascal.hasko.bernhard at googlemail.com> wrote:
>
> > Hallo an alle,
> >
> > kann mir jemand mit der folgenden Meldung zu einem Syntax-Fehler aufs
> > Fahrrad helfen? Mir erscheint dies einfach völlig unlogisch. Folgende
> > Befehle habe ich ausgeführt, um die Lese-Geschwindigkeit meiner
> > Laptop-Festplatte zu testen:
> >
> > $ sudo hdparm -tT /dev/sda
> >
> > /dev/sda:
> > Timing cached reads: 4762 MB in 2.00 seconds = 2381.87 MB/sec
> > Timing buffered disk reads: 232 MB in 3.02 seconds = 76.80 MB/sec
> >
> >
> > Wie ich gelesen habe, soll man diesen Test mehrer Male nacheinander
> > ausführen, damit der Cache nicht die Ergebnisse verfälscht:
> >
> > $ sudo for i in 1 2 3 4 5; do hdparm -tT /dev/sda; done
> > --bash: Syntaxfehler beim unerwarteten Wort `do'
> >
> > Nun das Ganze als Root:
> >
> > # for i in 1 2 3 4 5; do hdparm -tT /dev/sda; done
> >
> > /dev/sda:
> > Timing cached reads: 4480 MB in 2.00 seconds = 2240.09 MB/sec
> > Timing buffered disk reads: 174 MB in 3.02 seconds = 57.59 MB/sec
> >
> > /dev/sda:
> > Timing cached reads: 4506 MB in 2.00 seconds = 2254.04 MB/sec
> > Timing buffered disk reads: 186 MB in 3.01 seconds = 61.81 MB/sec
> >
> > /dev/sda:
> > Timing cached reads: 4506 MB in 2.00 seconds = 2253.63 MB/sec
> > Timing buffered disk reads: 196 MB in 3.02 seconds = 64.86 MB/sec
> >
> > /dev/sda:
> > Timing cached reads: 4478 MB in 2.00 seconds = 2237.56 MB/sec
> > Timing buffered disk reads: 156 MB in 3.08 seconds = 50.59 MB/sec
> >
> > /dev/sda:
> > Timing cached reads: 4442 MB in 2.00 seconds = 2221.33 MB/sec
> > Timing buffered disk reads: 172 MB in 3.01 seconds = 57.09 MB/sec
> >
> >
> > Ich kapiere es nicht, wieso erhalte ich einen Syntax-Fehler, wenn ich
> > das mit sudo mache? Es handelt sich doch offentlich weder um ein
> > PATH-Environment Problem, noch "dürfte" dies etwas mit Berechtigungen
> > zu tun haben. Muss ich etwas Besonderes beachten, wenn ich die
> > Konstruktion "for i in..." zusammen mit sudo verwende?
> >
> > Normalerweise verwende ich sudo sehr selten, nur wollte ich das auf
> > die Schnelle machen, und dies ersparte mir dann eigentliche ein
> > kleines Bisschen Tipparbeit.
> >
> > Vielen Dank für Eure Hilfe,
>
> Hallo Pascal,
>
> das Problem mit der Schleife ist einfach. Nimm bitte alle ';' und mache
> daraus einen Zeilenumbruch. Denn das ist die Aufgabe des Zeichens:
>
> sudo for i in 1 2 3 4 5
> do hdparm -tT /dev/sda
> done
>
> Der sudo - Aufruf ist damit schon nach der '5' beendet und der Rest
> wird wieder normal als neue Zeile gehandhabt.
>
> Daher die Fehlermeldung.
> --
> Mit freundlichem Gruß,
>
> Linux-Schmie.de
>
> Michael Gisbers
>
> Neukölner Str. 94
> 46147 Oberhausen
> Telefon: +49 208 628 950
> Telefax: +49 208 628 951
> Mobil: +49 173 510 68 22
> http://linux-schmie.de
> USt-IdNr. DE 189 020 052
>
> _______________________________________________
> linux-l mailing list
> linux-l at mlists.in-berlin.de
> Die Mailingliste der BeLUG (Berliner Linux User Group)
>
> Wenn du diese Mailingliste abbestellen willst, gehe bitte auf
> https://mlists.in-berlin.de/mailman/listinfo/linux-l-mlists.in-berlin.de
> und trage dich dort bitte aus
>
--
______________________________________________________
>From Googlemail-Webinterface
Pascal Bernhard
Schwalbacher Strasse 7
12161 Berlin
Germany
Phone: +49 (0) 30 32 66 58 00
*Je me regarde pour me désoler,
je me compare pour me consoler.
*
Mehr Informationen über die Mailingliste linux-l