The Lunduke Journal of Technology

Share this post
"GameShell" interactive game for learning Linux shell commands
lunduke.substack.com

"GameShell" interactive game for learning Linux shell commands

Change directories... save the world.

Bryan Lunduke
May 28
7
1
Share this post
"GameShell" interactive game for learning Linux shell commands
lunduke.substack.com

A new project has been released which seeks to teach people how to use a UNIX style shell… via a game-like experience.

Dubbed “GameShell”, the developers describe it this way on their GitHub page:

“Teaching first-year university students or high schoolers to use a Unix shell is not always the easiest or most entertaining of tasks. GameShell was devised as a tool to help students at the Université Savoie Mont Blanc to engage with a real shell, in a way that encourages learning while also having fun.”

Installing GameShell on most POSIX-y platforms is extremely simple, as is “playing” it: with the experience is broken down into individual missions — with each mission teaching a new Shell concept or command.

Kudos to the developer! Very cool to see this type of interactive (and fun) tool for teaching people how to work with UNIX-like systems.

What follows is an example of a GameShell session (in this case, Mission 1).

  ____                      ____  _          _ _
 / ___| __ _ _ __ ___   ___/ ___|| |__   ___| | |
| |  _ / _` | '_ ` _ \ / _ \___ \| '_ \ / _ \ | |
| |_| | (_| | | | | | |  __/___) | | | |  __/ | |
 \____|\__,_|_| |_| |_|\___|____/|_| |_|\___|_|_|

                             _
                           _/ \
          _               /    \
         / \_   __       /\/\  /\
        /    \ /  \     /    \/  \
       /\/\  /\    `--./.'-    `-.\
      /    \/  ' ^ _    _  _
    /\ ____..      YY  Y     _   |~  _
   /._/  _ \_        Y  Y   [_]--'--[_]
  / / .'/#\_ `-.    Y  YY   |'|""`""|'|
    .-_/#@##\  `\"" ' Y     | | /^\ | |
   " "'"''"'"'''" '         |_|_|I|_|_|

Press Enter to continue.

  ___________________________________________________________________
 /  __                                                           __  \
|  /  \   Welcome to GameShell!                                 /  \  |
|\ \   |                                                       |   / /|
| \___/|  Using and administering a computer running a         |\___/ |
|      |  Unix-like operating system (e.g., Linux, BSD or      |      |
|      |  macOS) requires using a command line interface       |      |
|      |  called "shell". In this game you will learn how      |      |
|      |  to use the shell by journeying through various       |      |
|      |  missions that will teach you to perform standard     |      |
|      |  tasks such as:                                       |      |
|      |    - creating directories,                            |      |
|      |    - creating, viewing and editing files,             |      |
|      |    - searching for files satisfying certain           |      |
|      |      criteria,                                        |      |
|      |    - running and interrupting programs,               |      |
|      |    - etc.                                             |      |
|      |                                                       |      |
|      |  During your adventure you will need to visit         |      |
|      |  locations, interact with people, and find various    |      |
|      |  objects. However, you have to keep in mind that      |      |
|      |  these are standard directories, programs, and        |      |
|      |  files (often with random contents). So, for          |      |
|      |  example:                                             |      |
|      |    - "build a hut" means creating a directory         |      |
|      |      called "Hut", and                                |      |
|      |    - "put a coin in your chest" means moving a file   |      |
|      |      called "coin" to a directory called "Chest".     |      |
|      |                                                       |      |
 \     |_______________________________________________________|     /
  \___/                                                         \___/


Press Enter to continue.


  |                                                   |
--+---------------------------------------------------+--
  | Run the command                                   |
  |     $ gsh goal                                    |
  | to discover your first mission.                   |
  |                                                   |
  | You can check the mission has been completed with |
  |     $ gsh check                                   |
  |                                                   |
  | The command                                       |
  |     $ gsh help                                    |
  | displays the list of available (gsh) commands.    |
--+---------------------------------------------------+--
  |                                                   |

[mission 1] $ ls
Castle  Forest  Garden  Mountain  Stall
[mission 1] $ cd Castle/
[mission 1] $ ls
Cellar  Great_hall  Main_building  Main_tower  Observatory
[mission 1] $ cd Main_tower/
[mission 1] $ ls
First_floor
[mission 1] $ cd First_floor/
[mission 1] $ ls
Second_floor
[mission 1] $ cd Second_floor/
[mission 1] $ ls
Top_of_the_tower
[mission 1] $ cd Top_of_the_tower/
[mission 1] $ ls
[mission 1] $ gsh check

Congratulations, mission 1 has been successfully completed!
1
Share this post
"GameShell" interactive game for learning Linux shell commands
lunduke.substack.com
1 Comment

Create your profile

0 subscriptions will be displayed on your profile (edit)

Skip for now

Only paid subscribers can comment on this post

Already a paid subscriber? Sign in

Check your email

For your security, we need to re-authenticate you.

Click the link we sent to , or click here to sign in.

eljondy
Writes eljondy’s Notebook May 28·edited May 28

I love the gamified learning paths, it helps introducing almost anybody to learn something

Expand full comment
ReplyCollapse
TopNewCommunity

No posts

Ready for more?

© 2022 Bryan Lunduke
Privacy ∙ Terms ∙ Collection notice
Publish on Substack Get the app
Substack is the home for great writing