[GRASS-user] GRASS GIS and alternative command line terminals in Windows

Hi all

I need to teach students GRASS GIS in Windows 7. Of course the GUI part works and all good.

But for command line, Is there anything better than cmd.exe?

There are many Console emulators available now a days, like Cmder (http://cmder.net/) and ConEmu (https://conemu.github.io/) in windows which are rich in features. GRASS GIS works in those, but wont inherit the features of those terminals as it opens with cmd.exe as shell.

Is there any way to get GRASS GIS work with those features of the terminals too?

I see in the startup script that cygwin is still given as an optional shell. I have never used it. How easy is to setup grass 7 with cygwin considering that students also have to follow it?

Thanks in advance for any pointers.

Regards

Sajid

But for command line, Is there anything better than cmd.exe?

what is missing in MS cmd?

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

On 23/11/17 15:18, Sajid Pareeth wrote:

Hi all

I need to teach students GRASS GIS in Windows 7. Of course the GUI part works and all good.

But for command line, Is there anything better than cmd.exe?

There are many Console emulators available now a days, like Cmder (http://cmder.net/) and ConEmu (https://conemu.github.io/) in windows which are rich in features. GRASS GIS works in those, but wont inherit the features of those terminals as it opens with cmd.exe as shell.

Can't this be configured with the environment variable GRASS_SH ?

Moritz

On Thu, Nov 23, 2017 at 4:22 PM, Helmut Kudrnovsky <hellik@web.de> wrote:

>But for command line, Is there anything better than cmd.exe?

what is missing in MS cmd?

It is not user friendly compared to UNIX shell. For example copy and paste
is complicated there or tab completion. What I am looking for is a way to
use GRASS GIS in UNIX like third party terminals in windows, so that I can
use basic UNIX based commands.

Regards
Sajid

For example copy and paste is complicated there

up from win 7 to win 10: you can do simply ctrl-c/ctrl-v e.g. to copy an
example from manual to cmd or if you want to copy something from cmd, just
mark this with the mouse, hit enter, and then ctrl-v.

or tab completion

at least to complete filenames, e.g. yourgeo.tif; if you're in cmd in the
folder containing this file, just type the first character, hit tab and the
file name will be completed

What I am looking for is a way to use GRASS GIS in UNIX like third party

terminals in windows, so that I >can use basic UNIX based commands.

simple unix commands like e.g. awk or grep etc are already there:

-----------------------
All attempts to enable English language have failed. GRASS running with C
locale.
If you observe UnicodeError in Python, install en_US.UTF-8 locale and
restart GRASS.
Cleaning up temporary files...
Starting GRASS GIS...
WARNING: Concurrent mapset locking is not supported on Windows

          __________ ___ __________ _______________
         / ____/ __ \/ | / ___/ ___/ / ____/ _/ ___/
        / / __/ /_/ / /| | \__ \\_ \ / / __ / / \__ \
       / /_/ / _, _/ ___ |___/ /__/ / / /_/ // / ___/ /
       \____/_/ |_/_/ |_/____/____/ \____/___//____/

Welcome to GRASS GIS 7.5.svn (r71800)
GRASS GIS homepage: http://grass.osgeo.org
This version running through: Command Shell
(C:\WINDOWS\system32\cmd.exe)
Help is available with the command: g.manual -i
See the licence terms with: g.version -c
See citation options with: g.version -x
If required, restart the GUI with: g.gui wxpython
When ready to quit enter: exit

Launching <wxpython> GUI in the background, please wait...
Microsoft Windows [Version 10.0.16299.64]
(c) 2017 Microsoft Corporation. Alle Rechte vorbehalten.

C:\>awk --version
GNU Awk 3.1.7
Copyright (C) 1989, 1991-2009 Free Software Foundation.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see http://www.gnu.org/licenses/.

C:\>grep --version
GNU grep 2.5.4

Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html&gt;
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

C:\>
-----------------------

I use this bundled unix tools here all the time in winGRASS. sometime you
can the use the windows equivalennt of these tools.

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

Sajid Pareeth-2 wrote

What I am looking for is a way to
use GRASS GIS in UNIX like third party terminals in windows, so that I can
use basic UNIX based commands.

also pipes e.g. to be used with grep, works in the windows own cmd

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

Hello all,

Despite all these functionalities that Helmut cited, I agree with Sajid that it is much easier and friendly to use the terminal in UNIX systems than in Windows. It would be great if an equivalent alternative was available…

Best,
Bernardo

Em quinta-feira, 23 de novembro de 2017 14:17:44 BRST, Helmut Kudrnovsky hellik@web.de escreveu:

Sajid Pareeth-2 wrote

What I am looking for is a way to
use GRASS GIS in UNIX like third party terminals in windows, so that I can
use basic UNIX based commands.

also pipes e.g. to be used with grep, works in the windows own cmd


best regards
Helmut

Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html


grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

Hi Helmut

Thank you for your detailed answer.
That’s interesting, I know significant improvement in this regard with Windows 10, but was not aware of this in Win 7.

The issue is none of these commands are available with the Windows 7 we have (laptops are provided pre-installed with some customized windows 7 by our IT, both to staff and students.).
The system configuration says, Windows 7 Enterprise, Service pack 1.

Do we have to enable these features , or by default available?

···

I use this bundled unix tools here all the time in winGRASS. sometime you
can the use the windows equivalennt of these tools.

Did you installed these bundled unix tools separately?

Regards

Sajid

>> I use this bundled unix tools here all the time in winGRASS. sometime
you
>> can the use the windows equivalennt of these tools.

Did you installed these bundled unix tools separately?

no, these tools are bundled with winGRASS.

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

Do we have to enable these features , or by default available?

which features do you mean? tab completion? copy/paste by ctrl-v?

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

It would be great if an equivalent alternative was available...

IMHO maintain and mimic unix behaviour of command line in winGRASS by
external dependencies isn't the best choice.

in order to get an overview what is missing from the basic unix tools, you
could start to draft a comparison of such often used tools in GIS workflow
which are available in unix/linux but aren't yet bundled in winGRASS and to
search if there are possible MS own equivalents.

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

On Thu, 23 Nov 2017 at 18:06, Helmut Kudrnovsky <hellik@web.de> wrote:

I use this bundled unix tools here all the time in winGRASS. sometime
you
can the use the windows equivalennt of these tools.

Did you installed these bundled unix tools separately?

no, these tools are bundled with winGRASS.

Oh sorry, I got confused. I understand, let me check.


best regards
Helmut

Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html


grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

Dear Helmut

I use this bundled unix tools here all the time in winGRASS. sometime you
can the use the windows equivalennt of these tools.

Now I see these tools with the daily build version of GRASS GIS 7.5.svn.
Thanks for the tip.

Though these are not available with the current stable version 7.2.2. Any
reason why these are not bundled with the stable version?

Regards

Sajid

Though these are not available with the current stable version 7.2.2. Any

reason why these are not >bundled with the stable version?

OSGeo4W-winGRASS or standalone winGRASS? maybe something with packaging?

I'm working here with OSGeo4W-winGRASS the most time.

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

OSGeo4W-winGRASS or standalone winGRASS? maybe something with packaging?

Standalone winGRASS

Sajid Pareeth-2 wrote

OSGeo4W-winGRASS or standalone winGRASS? maybe something with packaging?

Standalone winGRASS

would you mind to open a ticket where we list such differences between
standalone/OSGeo4W, between trunk and stable winGRASS?

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

Sajid Pareeth-2 wrote

OSGeo4W-winGRASS or standalone winGRASS? maybe something with packaging?

Standalone winGRASS

had a quick look into the standalone installer by unzip the exe, there are
no tools like grep, sed etc included.

OTOH in OSGeo4W-winGRASS, these tools are living in

C:\OSGeo4W64\apps\msys\bin

please have a look into a OSGeo4W-installation under "apps\msys\bin" in
order to screen which additional useful tools may be included into
standalone installer, as OSGeo4W is the build environment of the standalone
installer.

but keep in mind, there are some MS genuin equivalents of some 'unix' tools
like more [1] or sort [2].

further, in MS powershell there are also some similar tools to cover
functionality like grep.

and furthermore, since win 10 there is also linux for windows [3] .... :wink:

to sum up, there isn't one solution to 'mimic' unix like command line
terminals in winGRASS.

IMHO it would be worth to discuss this in a future code sprint to find a
good way to support a smooth command line in winGRASS.

[1]
https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/more.mspx?mfr=true
[2]
https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sort.mspx?mfr=true
[3] https://msdn.microsoft.com/en-us/commandline/wsl/install-win10

-----
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html

Dear Moritz

Can't this be configured with the environment variable GRASS_SH ?

I tried it, but GRASS crashes with warning about unsupported shell, and
"LOCATION_NAME variable not set" error. I think it require more settings
than just the GRASS_SH variable.

Regards

Sajid

Dear Helmut

Thank you for the detailed reply.

It really helped and finally I am able to run the unix based commands/scripts in GRASS in windows.

So as you said, the key is to install GRASS from OSgeo4W installer, install msys too along with GRASS.
The best part is bash.exe in msys/bin, which mimic the unix behavior very well :slight_smile:

···

and furthermore, since win 10 there is also linux for windows [3] … :wink:

Yes I have tried this and it works really well. As I said we are forced to work in Windows 7 with the students.

Thanks again

Regards

Sajid

Hi again

···

Standalone winGRASS

would you mind to open a ticket where we list such differences between
standalone/OSGeo4W, between trunk and stable winGRASS?

Yes, those msys tools are not packaged with standalone winGRASS.

Do you think it is a packaging issue or not supposed to be included??

Sajid