-
Command auto completion (Tab)
-
Command syntax hints (Ctrl+Tab)
-
List commands with
help -
Users
- Saved to file
- Password hashing using the RSA Data Security, Inc. MD5 Message Digest Algorithm
- Superusers
-
History
- Saved to file per user (& guest)
- View with
history - Clear with
history clear - Navigation (↑ & ↓)
-
Easy command declaration (see cmd_defs.c)
CMD( .name = "history", .description = "Display the session command history", .impl = cmd_history, SUB_CMDS( { .name = "clear" } ) ),
-
Command verification and unit testing
-
Input buffer editing
- Cursor navigation (← & →)
- Word navigation (Ctrl+← & Ctrl+→)
- Backspace
- Back word (Ctrl+Backspace)
- Delete
- Delete word (Ctrl+Del)
- Clear (escape)
- Only compiles on Windows, though it shouldn't be hard to implement the remining platform-specific functions for Linux
- Large paths and inputs are not checked
A .useless_shell directory will be created in ~/AppData/Roaming upon first run to store command history and user data.
Login as admin user (login admin) and run uninstall. To do it manually, delete the .useless_shell directroy and the executable.