[linux-l] Logik von "Syntax-Fehler" in Bash

Hauke Laging mailinglisten at hauke-laging.de
Fr Dez 27 18:23:05 CET 2013


Am Fr 27.12.2013, 17:11:52 schrieb Lutz Willek:

> Ein "sudo for i in 1 2 3 4 5 ; do befehl ;done" funktioniert deshalb
> nicht, weil
> 
> sudo befehl1; befehl2; befehl3
> 
> nicht das ist was Du willst, aber Du es so geschrieben hast

Diese Darstellung finde ich nun nicht besonders gelungen. Denn es ist ja 
gerade *nicht* ein Konstrukt der Art

sudo befehl1; befehl2; befehl3

Wäre es so, würde die Shell ja nicht meckern, sondern allen falls sudo. 
befehl2 ist eben kein gültiges Shellkommando. Und befehl1 ist nichts, was sudo 
starten könnte. Ein execve() auf for ist halt nicht drin. Treffender wäre:

sudo befehl1; shellschrott

Und wenn man das nicht in eine Zeile schreibt, sondern erst mal nur
sudo befehl1
losballert, kriegt man von sudo auch gleich ein paar Takte gesagt.


> so nicht funktionierte: ...is  a sequence of optional variable
> assignments followed by blank-separated words and redirections, and
> terminated by a control operator. Mach Dir nix draus, den Wink hat
> scheinbar nicht mal Hauke verstanden ;) Schade eigentlich.

Mir ist zwar nicht klar, wer oder was mir gewunken haben soll, aber dafür, 
dass Newline ein control operator ist. Und damit, dass ich etwas *scheinbar* 
nicht verstanden haben soll, komme ich bestens zurecht... 8-)


CU

Hauke
-- 
Crypto für alle: http://www.openpgp-schulungen.de/fuer/bekannte/
OpenPGP: 7D82 FB9F D25A 2CE4 5241 6C37 BF4B 8EEF 1A57 1DF5
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 572 bytes
Beschreibung: This is a digitally signed message part.
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20131227/93cfff76/attachment.sig>


Mehr Informationen über die Mailingliste linux-l