First stable release of shell-java — a custom POSIX-style shell implementation in Java.
What's New in v1.0.0
alias— set, list and expand command aliasesunalias— remove aliases with-aflag to clear all- Recursive alias expansion with self-reference protection
- Alias names complete via Tab alongside builtins and PATH binaries
- Unit tests for core components (
Tokenizer,PathResolver,HistoryManager,JobManager,AliasManager,Environment,OutputWriter,CommandRegistry) - README with features, usage examples, architecture and release history
- MIT license
Full Feature Set
- Builtin commands:
echo,pwd,cd,ls,mkdir,rmdir,touch,cat,type,exit,history,fc,clear,alias,unalias,declare,export,unset,jobs,complete - I/O redirection:
>,>>,2>,2>> - Pipelines:
cmd1 | cmd2 | cmd3 - Background execution:
command & - Variable expansion:
$VAR,${VAR},$?,$$,$! - History expansion:
!!,!n,!prefix - Tab completion: builtins, PATH executables, files, directories, aliases
- Persistent command history via
~/.shell_java_history - Job control: background execution and
jobsbuiltin - Quote handling: single quotes, double quotes, backslash escaping
Changes
See [#9] for full details.