PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : awk Anfänger Problem: ausführbare Skripte



Gutschy
18-04-2012, 09:01
Hallo Leute,

versuche gerade ein bisschen awk zu verstehen und lese mir dazu ein Buch durch.

Einfache awk Beispielskripte ausführen klappt. Nur wenn Shell Scripte awk aufrufen passiert gar nichts.

Also, alle Scripte sind Übungscripte zum Buch und als Datei auf dem Rechner geladen, s.h. keine Tippfehler. Die Scripte sind als chmod +x ausführbar gemacht worden, habe ich jetzt mal für die Shell und für die awk Scripte gleich mitgemacht, in der Shell bin ich als root unterwegs.

Wenn ich jetzt:

beleg $HOME

eintippe, sollte laut Buch eine Zeile mit meiner Festplattenbelegung kommen. Bei diesem und anderen Beispielen passiert aber gar nichts.

Der Vollständigkeit halber, hier noch das Script.


if [ $# -eq 0 ]
then
dir=`pwd`
else
dir="$*"
fi

du -s $dir | awk '
BEGIN { blockgroesse=1024.0 } # evtl. aendern
{
printf("%30s : ", $2)
total += $1
blockzahl=$1
byte_zahl=blockzahl*blockgroesse
printf("%10.1f KByte\n", byte_zahl/1024.0)
}
END { printf("--------------------------------------------------\n")
printf("%30s : ", "Gesamt")
byte_zahl=total*blockgroesse
printf("%10.1f KByte\n", byte_zahl/1024.0)
}'

Schon mal Danke für die Hilfe im voraus.

Gruß,

Gutschy

peschmae
19-04-2012, 12:05
Also bei mir funktioniert das script. Allerdings fehlt der shebang (k.A. wie er bei mir darauf kommt mit was er das ausführen soll). Also am besten am Anfang noch eine Zeile mit

#!/bin/bash

einfügen oder so (oder #!/bin/sh). Ansonsten: funktionieren bei dir Shell-Scripts ganz allgemein? z.B. schon mal der Teil ohne awk:


#!/bin/bash

if [ $# -eq 0 ]
then
dir=`pwd`
else
dir="$*"
fi

du -s $dir


MfG Peschmä

Gutschy
21-04-2012, 18:21
Hi peschmae,

vielen Dank für deinen Hinweis, ich bin dadurch drauf gekommen was ich falsch gemacht habe.

./script

So ruft man ein Script auf, dann klappts auch mit dem Nachbarn.

Und ja, ich hätte auf dein Posting gerne viel eher reagiert, aber Erkältungs bedingte Kopfschmerzen haben mich jeglicher Motivation beraubt.:o

Gruß,

Gutschy