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

Bashcrawl Scrap Heap: Symbolic Links and Portal Creation

Learn symbolic links in Bashcrawl's Scrap Heap using ln -s, readlink, and ls -l. Create portal symlinks that warp you instantly to distant dungeon corners.

🌱 Lvl 0000Apprentice ⚔️ Side Quest 🟡 Medium 20-25 minutes

Bashcrawl Scrap Heap: Symbolic Links and Portal Creation

Build and inspect symbolic-link portals with ln -s, ls -l, and readlink to traverse the Scrap Heap and recover the portal crystal.

Primary Tech
🛠️ bash
Skill Focus
Fullstack
Series
Bashcrawl Adventure Path
Author
IT-Journey Team
XP Range
⚡ 0-250

The Scrap Heap is a wasteland of discarded objects — broken swords, empty potion bottles, shattered mirrors. But hidden among the junk are portal mirrors, and learning ln -s lets you build instant teleportation.

🕹️ Play This Chamber

This page is your walkthrough and strategy guide — play right here in the browser, then follow the steps below.

🕹️ Bashcrawl — Web Terminal Open full screen ↗

The game loads in the Entrance. Use cd to make your way to the Scrap Heap chamber, then follow the walkthrough below. Progress saves in your browser. Prefer a real shell? See Install & Play Locally.

🎯 Quest Objectives

  • Understand the difference between hard links and symbolic links
  • Create a symbolic link with ln -s
  • Identify symlinks with ls -l (look for ->)
  • Resolve the target of a symlink with readlink
  • Use the scrap’s portal symlinks to shortcut navigation
  • Collect the portal crystal

�️ Quest Prerequisites

⚡ Command Cheatsheet

Command What It Does
ln -s target link_name Create a symbolic link pointing to target
ls -l Long listing — symlinks show link -> target
ls -F Symlinks show with @ marker
readlink link_name Print the target of a symlink
readlink -f link_name Print the fully-resolved absolute path
realpath path Same as readlink -f (more modern)
Property Hard Link Symbolic Link
Points to Inode (data) Path (name)
Works across filesystems No Yes
Target deleted Link still works Broken link (dangling)
ls -F marker none @

🗺️ Walkthrough

Step 1 — Survey the scrap heap

ls -F
# broken_sword  empty_bottle  portal_mirror@  scrap_pile/  crystal_hint

ls -l portal_mirror
# lrwxrwxrwx  1 user group  12 Jan 01  portal_mirror -> /vault/lab

portal_mirror is already a symlink — it points to the vault’s lab. You can cd portal_mirror and you will land directly in the lab.

Step 2 — Navigate via the existing portal

cd portal_mirror
pwd
# .../vault/lab   ← teleported!
cd -             # Return to previous directory (the scrap heap)
pwd
# .../scrap

cd - takes you back to wherever you were last. Very useful.

Step 3 — Read the hint

cat crystal_hint
# "Create a shortcut named 'quick_entrance' pointing to ../../ENTRANCE"

Step 4 — Create your own portal

ln -s ../../ENTRANCE quick_entrance
ls -l quick_entrance
# lrwxrwxrwx  1 user group  20 Jan 01  quick_entrance -> ../../ENTRANCE

ls -F quick_entrance/
# scroll  cellar/          ← entrance contents, via symlink

Step 5 — Inspect and resolve

readlink quick_entrance
# ../../ENTRANCE

readlink -f quick_entrance
# /home/user/bashcrawl/ENTRANCE  ← absolute, resolved path

Step 6 — Collect the crystal

cat crystal_hint
inventory
# portal crystal ✓

💡 Common Pitfalls

Problem Cause Fix
Symlink shows broken (red in terminal) Target path does not exist Check relative path with readlink
ln -s with no arguments Wrong order Syntax: ln -s TARGET LINK_NAME
cd symlink goes somewhere unexpected Relative path off Use absolute path or readlink -f
Cannot delete directory via symlink Symlink vs directory rm symlink removes the link; rm -r removes the target

Danger: rm -r symlink_to_dir may behave unexpectedly depending on your shell version. Prefer unlink symlink_name to safely remove only the link.

✅ Validation

  • You know the difference between ls -F @ and a real directory
  • You created quick_entrance and successfully cd‘d through it
  • You can resolve absolute target paths with readlink -f
  • The portal crystal is in your inventory

➡️ Next Steps


🖥️ Advanced: Install & Play Locally

The embedded terminal above is the fastest way to play — but the advanced version runs Bashcrawl in a real shell on your own machine, with the full Textual TUI, agent mode, and a genuine filesystem sandbox. The walkthrough on this page works identically in either mode.

Option A — Clone the game

git clone https://github.com/bamr87/bashcrawl.git
cd bashcrawl
./setup.sh        # one-time setup: dirs, permissions, help system
./main.sh         # launch the adventure (interactive menu)

Option B — It already ships with IT-Journey

Bashcrawl lives in this repository as the submodules/bashcrawl git submodule. If you cloned IT-Journey, pull it down and play in place:

git submodule update --init submodules/bashcrawl
cd submodules/bashcrawl
./setup.sh
./main.sh --interactive

Play modes

CommandModeBest for
./main.sh --interactiveTextual TUI (recommended)A rich local interface — needs Python 3 + textual
./main.sh --classicClassic bash emulatorSystems without Python
./main.sh --nativeNative terminalThe full real-filesystem experience
./main.sh --tutorialTutorial modeGuided, step-by-step learning
./main.sh --agentAgent modeAI automation and screenshots
./main.sh --helpHelpAll launcher options

Want to host the browser build yourself? From the game directory run make web-preview and open http://127.0.0.1:8000. The same static build is what powers the embedded terminal above (bamr87.github.io/bashcrawl).

📚 External Resources

Continue your terminal adventure with these resources:


Portals created. The dungeon’s geography bends to your will. 🗑️

🕸️ Knowledge Graph

Structured wiki-links connect this quest to the IT-Journey knowledge graph. Open the Obsidian Graph View to explore connections.

Level hub: [[Level 0000 - Foundation & Init World]] Overworld: [[🏰 Overworld - Master Quest Map]] Prerequisites: [[Bashcrawl Cellar: File Types, Aliases, and Emerald Amulet]] Unlocks: [[Bashcrawl Rift: Pipes, Redirection, and the Final Boss]] Sequel quests: [[Bashcrawl Rift: Pipes, Redirection, and the Final Boss]] Obsidian docs: [[Obsidian Knowledge Graph and Wiki Links]]

🎁 Rewards

🕸️ Quest Network

graph TD loading(["Loading quest graph…"])