[GRASS-user] result from g.copy when layer exists

Nikos Alexandris nik at nikosalexandris.net
Thu Jul 18 01:35:38 PDT 2013

Rainer MK wrote:
> >> I am a bit irritated,  ut maybe I don't dee the reasoning behind this:'

> >> ,----
> >> | RASS 7.0.svn (grass):~ > g.copy rast=MASK,tmp
> >> | WARNING: <tmp> already exists
> >> | [Raster MASK present]
> >> | GRASS 7.0.svn (grass):~ >
> >> `----

> >> If the layer already exists, shouldn't the command give actually an
> >> error and not only a warning?

> >> A warning implies for me that the command worked, but maybe something
> >> unexpected could have happened (or happened) - but this one clearly did
> >> not work, as the layer has not been copied?

Glynn Clements:
> > In GRASS, errors are fatal; the program will be terminated as soon as
> > the error message has been printed.

Rainer MK:
> Exactly - if e.g. in r.mapcalc an invalid expression is entered,
> r.mapcalc issues the error message and quits.
> > Each of g.copy's options accept an arbitray number of
> > source+destination pairs, and the various options aren't mutually
> > exclusive (e.g. a single invocation can copy both raster and vector
> > maps).

> True.

> > If it can't perform a particular copy for any reason, it generates a
> > warning then moves on to the next item.

> True - but this does not answer my question. But I looked at cp in bash,
> and it behaves in the same way.
> So I think I have to live with this.

Just sharing my thoughts about: Imagine copying 1000 maps.  And one is meant 
to fail, say the 1st one of them.  You wouldn't, probably, like the copy 
process to be interrupted just for one map that failed. Right?

Greets, Nikos

More information about the grass-user mailing list