[FOSSGIS-Talk] GRASS GIS : Mehrere Befehle direkt hintereinander ausführen;
st_kiefer at web.de
st_kiefer at web.de
So Jun 11 23:29:56 CEST 2017
Hallo Stefan,
Du kannst ein sog. Shell-Skript anlegen.
In der Konsole kannst Du das tun, indem du einen Editor Deiner Wahl
benutzt (vi, nano, emacs) und damit die Datei bearbeitest. Die Datei
muss dazu noch nicht existieren. Du kannst auch einen beliebigen
graphischen Texteditor benutzen, und dann die Datei in Deinem Workspace
abspeichern. Benenne die Datei zweckmäßigerweise in der Art: "Dateiname.sh"
Die Endung .sh hilft Dir die Datei als Skript-Datei wieder zu erkennen.
Gib nun in diese Datei Deine Befehle in der Reihenfolge ein, in der sie
ausgeführt werden sollen. Jeden Befehl in eine neue Zeile.
Wenn Du die Datei gespeichert hast musst Du sie noch als Ausführbar
kennzeichnen. Dazu gibst Du in der Konsole folgendes ein:
chmod +x dateiname.sh
Nun kannst Du die Datei durch Eingabe von
./Dateiname.sh
ausführen, und Deine Befehle sollten der Reihe nach aufgerufen werden.
Der Punkt und Querstrich (wichtig Slash, nicht Backslash) vor dem
Dateinamen sind wichtig, sonst würde das Betriebssystem nach einem
Befehl namens Dateiname.sh suchen, den es wahrscheinlich nicht findet.
Das ist jetzt mal ne Quick und Dirty-Beschreibung. Schau gerne auch mal
unter dem Stichwort Shell-Skripting im Internet. Es gibt da viel mehr
Möglichkeiten die Befehlsausführung zu steuern und Informationen zu
beschaffen und auszuwerten
Am 11.06.2017 um 22:34 schrieb net-ecke at gmx.net:
> Hallo,
>
> eine Anfängerfrage :
>
> Wie kann man in GRASS GIS mehrere Befehle direkt hintereinander
> ausführen ?
>
> Konkretes Beispiel :
>
> In der Beschreibung zu
> https://grass.osgeo.org/grass72/manuals/r.sim.water.html
>
> findet sich folgendes Beispiel :
>
> "g.region raster=elevation.10m -p
> r.slope.aspect elevation=elevation.10m dx=elev_dx dy=elev_dy
>
> # synthetic maps
> r.mapcalc "rain = if(elevation.10m, 5.0, null())"
> r.mapcalc "manning = if(elevation.10m, 0.05, null())"
> r.mapcalc "infilt = if(elevation.10m, 0.0, null())"
>
> # simulate
> r.sim.water elevation=elevation.10m dx=elev_dx dy=elev_dy rain=rain
> man=manning infil=infilt nwalkers=5000000 depth=depth"
>
>
> Unter "Console" kann man natürlich die einzelnen Befehle
> hintereinander eingeben und separat ausführen.
> Gibt es aber auch die Möglichkeit, den ganzen Befehlsblock auf einmal
> einzugeben und auszuführen ?
> Bei mir funktioniert das in der Console nicht.
>
> Danke und Gruss, Stefan
>
> ---
> Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
> https://www.avast.com/antivirus
>
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste