The Ultimate Interactive Linux Terminal Simulator for VS Code
Practice Linux commands, explore virtual file systems, and master the CLI—right inside your editor, without the risk of breaking your real machine.
Whether you're a beginner taking your first steps in bash, a student preparing for Linux certification, or a developer testing script logic, LinuxLabX provides a safe, fully in-memory sandbox. It sits quietly in your Activity Bar, ready whenever you need to spin up a terminal session.
(Note: Save the screenshot you provided as media/demo.png in your repository to display it here)
- 🛡️ Zero-Risk Sandbox: An entirely in-memory virtual file system. Make mistakes, delete files, and run commands without ever touching your real OS.
- 💡 Smart Auto-Completion: Press
Tabfor intelligent command and path auto-completion. ⚠️ Danger Warnings & Real-time Hints: Get instant contextual feedback when typing potentially destructive commands likerm -rf /orchmod 777.- 🎓 Interactive Guided Tutorials: Type
tutorialto launch built-in, step-by-step missions that teach you Linux fundamentals interactively. - 🔗 Pipes & Chaining: True terminal feel with support for command chaining (
&&,;) and data piping (|). - 💾 Session Persistence: Close VS Code and come back later; your virtual filesystem state is automatically saved and restored.
LinuxLabX emulates standard GNU/Linux utilities natively in JavaScript.
| Command | Description | Example Usage |
|---|---|---|
pwd |
Print working directory | pwd |
ls |
List directory contents | ls -la |
cd |
Change directory | cd /home/user |
mkdir |
Create new directory | mkdir -p docs/assets |
touch |
Create empty file | touch script.sh |
cat |
Display file contents | cat script.sh |
echo |
Write text into a file | echo "Hello" > msg.txt |
rm |
Remove file or directory | rm -rf old_folder |
cp |
Copy file or directory | cp config.json backup/ |
mv |
Move or rename file | mv temp.txt final.txt |
chmod |
Change file permissions | chmod 755 script.sh |
grep |
Search text in file | grep "error" log.txt |
find |
Search for files | find . -name "*.js" |
wc |
Count lines, words, bytes | wc main.ts |
head/tail |
View file boundaries | tail -n 10 server.log |
clear |
Clear terminal screen | clear |
- Click on the LinuxLabX icon in the left Activity Bar.
- The terminal will instantly boot up with a fresh session.
- Type
helpto see available commands, ortutorialto start learning. - To reset your sandbox environment to factory defaults, click the Restart Session button in the toolbar.
Customize LinuxLabX through your VS Code settings (settings.json):
| Setting | Type | Default | Description |
|---|---|---|---|
linuxlabx.autoRestoreSession |
boolean |
true |
Enable/disable restoring the virtual filesystem and tutorial state between VS Code sessions. |
This project is open-source! If you want to add new bash commands, improve the terminal UI, or add more tutorials, feel free to submit a Pull Request on GitHub.
MIT License © Ankit Singh
