[GRASS-user] Basic problem with defining parameter
Moritz Lennert
mlennert at club.worldonline.be
Wed Oct 8 08:03:34 PDT 2014
On 08/10/14 16:00, adamhoff wrote:
> Hello,
> I'm new to GRASS and programming and I'm trying to learn Grass shell
> programming and developing a small code help me automate my work.
> I'm doing this tutorial grasswiki.osgeo.org/wiki/Shell_scripting and have
> already run into a problem (which, early in a tutorial is rather annoying)
This page is not really a tutorial, but an information page about how to
do shell scripting with GRASS. A minimum of knowleddge about shell
scripting is probably a pre-requisite for understanding the examples.
>
> When I try to run this
> map=$1
> g.message message="Setting computational region to map <$map>"
> g.region rast=$map
> d.erase
> d.rast $map
> exit 0
>
>
> Grass tells me it cannot find the map. But I don't even know where exactly I
> put the name of the file is it
> map=$name_of_raster or map=name_of_raster.
>
> Does someone have the answer?
>
Have you followed the example to its end, i.e. to the examples ?
Actually, what is says is that you have to create a text file containing
the script:
#!/bin/sh
# Author: me, today; copyright: GPL >= 2
# Purpose: Script to set computational region to a raster map
# Usage: d.rast.region rastermap
g.region rast=$1
d.erase
d.rast $1
exit 0
Then you save this text file (for example using as filename
d.rast.region) and call it with the shell interpreter sh and giving it
the name of a raster map as input. You have to open a monitor (using the
command d.mon) before calling the script for it to work:
d.mon x0
sh d.rast.region elev_state_500m
Here elev_state_500m is the name of a raster map (from the North
Carolina Demo data you can find on the GRASS web site).
Moritz
More information about the grass-user
mailing list