Skip to main content
Settings
Search
Appearance
Theme Mode
About
Jekyll v3.10.0
Environment Production
Last Build
2026-05-24 00:35 UTC
Current Environment Production
Build Time May 24, 00:35
Jekyll v3.10.0
Build env (JEKYLL_ENV) production
Page Location
Page Info
Layout default
Collection quests
Path _quests/0000/bashcrawl/vault.md
URL /quests/0000/side-quests/vault/
Date 2026-05-22
Theme Skin
SVG Backgrounds
Layer Opacity
0.6
0.04
0.08

Bashcrawl Vault: Environment Variables and the Goblet Puzzle

By IT-Journey Team

Master environment variables in Bashcrawl's Vault using export, echo $VAR, and env. Solve the goblet puzzle in the stronghold and survive a ghost encounter.

Estimated reading time: 4 minutes

Behind a heavy iron door, the Vault holds the dungeon’s most powerful secrets — not gold and jewels, but the invisible variables that shape every shell. Set them correctly, or the ghost devours you.

🎯 Quest Objectives

  • Set and read shell variables with = and $VAR
  • Export a variable with export so child processes see it
  • Use env and printenv to inspect the shell environment
  • Solve the goblet puzzle in the stronghold
  • Survive the ghost encounter in the lab
  • Collect the vault key fragment

�️ Quest Prerequisites

⚡ Command Cheatsheet

Command What It Does
VAR=value Set a shell variable (local to current shell)
export VAR=value Set and export to child processes
echo $VAR Print a variable’s value
env Show all exported environment variables
printenv VAR Print a specific env variable
unset VAR Remove a variable
export -p List all exports in a reusable format

Local vs Exported Variables

# Local — child scripts cannot see this:
SECRET=password

# Exported — child scripts and subshells inherit it:
export SECRET=password

# Verify inheritance:
export GREETING="Hello Dungeon"
bash -c 'echo $GREETING'   # prints: Hello Dungeon

🗺️ Walkthrough

Step 1 — Enter the vault and read the stronghold scroll

cd .VAULT          # The vault may be hidden — use ls -a
ls -F
# stronghold/  nursery/  lab/  vault_scroll

cat vault_scroll

The scroll explains that each sub-area requires a specific environment variable to be set correctly.

Step 2 — Stronghold: solve the goblet puzzle

cd stronghold
ls -F
# goblet*  inscription

cat inscription
# "The goblet demands the colour of magic. Set MAGIC_COLOR before running ./goblet."

export MAGIC_COLOR="purple"
./goblet
# The goblet glows purple. Correct!
# Vault door unlocked.

Different game sessions may demand different values. Read the inscription carefully.

Step 3 — Nursery: learn about local variables

cd ../nursery
ls
# seeds  growth_chart  care_notes

cat care_notes
# "PLANT_NAME must be set to continue growing."

export PLANT_NAME="moonflower"
cat growth_chart

The nursery teaches that variables can store any string — command output, paths, names.

Step 4 — Lab: the ghost encounter

cd ../lab
ls -a
# ghost*  .formula  beakers/

cat .formula
# "To banish the ghost: set GHOST_BANISH to the name found in the beakers."

ls beakers/
cat beakers/vial_7
# Value: "iron_salt"

export GHOST_BANISH="iron_salt"
./ghost
# Ghost banished! The lab is safe.

If GHOST_BANISH is not set or wrong, ./ghost reduces your HP substantially.

Step 5 — Verify your environment

env | grep -E "MAGIC_COLOR|GHOST_BANISH|PLANT_NAME"
# MAGIC_COLOR=purple
# GHOST_BANISH=iron_salt
# PLANT_NAME=moonflower

Step 6 — Collect the vault key fragment

cd ..
ls -F
# vault_key_fragment

cat vault_key_fragment
inventory
# vault key fragment ✓

💡 Common Pitfalls

Problem Cause Fix
$VAR prints empty Variable not exported Use export VAR=value
Ghost still attacks Wrong value in GHOST_BANISH Re-read .formula and beaker vial
env shows nothing Non-exported variable Use export or check with set | grep VAR
./goblet says “wrong” Case mismatch Variable values are case-sensitive

✅ Validation

  • You understand the difference between local and exported variables
  • You ran env and found your variables in the output
  • The goblet puzzle is solved
  • The ghost is banished
  • The vault key fragment is in your inventory

➡️ Next Steps


📚 External Resources

Continue your terminal adventure with these resources:


The ghost dissolves. Variables mastered. The vault yields its secrets. 🔒