🦆 Welcome to Ducksh
A secure, friendly shell for the 21st century.
Ducksh is built for beginners and professionals alike, with a focus on security, simplicity, and ease of use.
A big part of that is making things discoverable. You shouldn't necessarily have to memorize a bunch of commands just to get started.
Familiar commands, friendlier alternatives
Ducksh has the commands you'd expect, like cd, pwd, ls, and echo, but many of them also have more descriptive alternatives.
For example:
cd projects
go projects
waddle projects
All get you where you're going. 🦆
The duck-themed aliases aren't meant to replace normal shell commands. They're just another way to interact with the shell (and make it a little more fun).
Quick Reference
Here's what Ducksh currently looks like:
NAVIGATION
Tab Complete commands and paths
Right Arrow Accept the history suggestion
↑ / ↓ Browse command history
history Show this session's commands
FILES & DIRECTORIES
cd DIR / go DIR Change directory (waddle / g)
pwd / where Show current directory (nest / here)
ls / list List files (pond / l)
mkdir / newdir Create a directory
OUTPUT & TERMINAL
echo / say Print text (quack / e)
clear Clear the screen (flap / c)
CMD & CMD Run commands in order
CONFIGURATION
source FILE Load a Ducksh config file
reset Clear screen & reload ~/.quackrc
export A=value Set an environment variable
path Show PATH entries
theme [NAME] List or switch themes
alias NAME=CMD Create a simple alias
SESSION
logout Log out & authenticate another user
exit Leave Ducksh (bye / q)
Tab is your friend
One thing Ducksh encourages is exploration.
If you aren't sure what command or path you're looking for, press Tab.
Ducksh can help complete commands and paths, so you don't have to remember everything before you can start using the shell.
There's also history built into the prompt. You can use ↑ / ↓ to browse previous commands, or use the Right Arrow to accept a history suggestion.
Making it yours
Ducksh has a ~/.quackrc configuration file.
You can create aliases:
alias NAME=CMD
Set environment variables:
export A=value
Switch themes:
theme NAME
And reset gives you a quick way to clear the terminal and reload your configuration.
Configuration is kept simple so you can customize your shell without dealing with a giant configuration system.
Security and syntax
Ducksh has two main goals: be more secure than Bash and have nice syntax.
At the same time, it keeps familiar commands like cd, pwd, ls, and echo, so using Ducksh doesn't mean throwing away commands you already know.
The alternative commands give you a different syntax when you want it:
go projects
list
say "Hello!"
Or, of course:
waddle projects
pond
quack "Hello!"
Install Ducksh
The Ducksh repository is on SourceForge:
https://sourceforge.net/p/ducksh
Download the repository and run the included installer:
./install.sh
Once it's installed, you're ready to start using Ducksh.
Tip: Press Tab whenever you're unsure — Ducksh can help complete commands and paths.
Top comments (0)