Rusty Bash (a.k.a. sushi ๐ฃ shell)
IMPORTANT: the main branch is switched to the shell develped for articles on SoftwareDesign .
๏ผไปใพใงใฎใกใคใณใใฉใณใใฏใ้ฃ่ผใฎใใฎใซๆฏในใฆๆฃใใใใใใชใฎใงใ้ฃ่ผใฎใใฎใmainใซๅใๆฟใใพใใใ๏ผ
A clone of Bash, which is developed as a hobby of our group and for monthly articles on SoftwareDesign magazine published by Gijutsu-Hyohron Co., Ltd.
$ git clone https://github.com/shellgei/rusty_bash.git
$ cd rusty_bash
$ cargo run
ใปใปใป
Finished dev [unoptimized + debuginfo] target(s) in 0.04s
Running ` target/debug/sush`
ueda@uedaP1g6:main๐ต~/GIT/rusty_bash(debug)๐ฃ
$ git clone https://github.com/shellgei/rusty_bash.git
$ cd rusty_bash
$ cargo build --release
# ## โ Change /bin/ to /usr/local/bin/ or another path in $PATH if you are using Mac or BSD ###
$ sudo cp target/release/sush /bin/
$ cp .sushrc_for_linux ~ /.sushrc # edit if some errors occur
$ sush
ueda@uedaP1g6:main๐ต~/GIT/rusty_bash๐ฃ
Please give us issues or pull requests in a way you think sensible. We do not have a rigid rule at this stage.
โ๏ธ :available
๐ง :partially available (or having known bugs)
๐
: not implemented
features
status
features
status
features
status
command
โ๏ธ
substitutions
โ๏ธ
function definition
โ๏ธ
features
status
features
status
features
status
if
โ๏ธ
while
โ๏ธ
()
โ๏ธ
{}
โ๏ธ
case
โ๏ธ
until
๐
for
โ๏ธ
[[ ]]
โ๏ธ
features
status
features
status
features
status
||
โ๏ธ
&&
โ๏ธ
;
โ๏ธ
;;
โ๏ธ
|
โ๏ธ
&
โ๏ธ
|&
โ๏ธ
features
status
features
status
features
status
brace {a,b}
โ๏ธ
brace
โ๏ธ
tilde
โ๏ธ
arithmetic
โ๏ธ
word splitting
โ๏ธ
path name
โ๏ธ
command substitution
โ๏ธ
parameter/variable $A ${A}
โ๏ธ
${name:offset}, ${name:offset:length}
โ๏ธ
features
status
features
status
features
status
$
โ๏ธ
?
โ๏ธ
*
โ๏ธ
@
โ๏ธ
#
โ๏ธ
-
โ๏ธ
!
๐
_
โ๏ธ
features
status
features
status
features
status
cd
โ๏ธ
pwd
โ๏ธ
read
๐ง
exit
โ๏ธ
source
โ๏ธ
set
๐ง
shopt
๐ง
:
โ๏ธ
.
โ๏ธ
alias
โ๏ธ
bg
๐ง
bind
๐
break
โ๏ธ
builtin
๐
caller
๐
command
๐
compgen
๐ง
complete
๐ง
compopt
๐
continue
โ๏ธ
declare
๐
dirs
๐
disown
๐
echo
๐
enable
๐
eval
โ๏ธ
exec
๐
fc
๐
fg
๐ง
getopts
๐
hash
๐
help
๐
history
๐ง
jobs
๐ง
kill
๐
let
๐
local
โ๏ธ
logout
๐
mapfile
๐
popd
๐
printf
๐
pushd
๐
read
๐
readonly
๐
return
โ๏ธ
shift
๐
suspend
๐
test
๐
times
๐
trap
๐
true
โ๏ธ
type
๐
typeset
๐
ulimit
๐
umask
๐
unalias
๐
unset
๐ง
wait
๐ง
export
๐
false
โ๏ธ
features
status
features
status
features
status
-c
โ๏ธ
-i
โ๏ธ
-l, --login
๐
-r
๐
-s
๐
-D
๐
[-+]O
๐
--
๐
--debugger
๐
--dimp-po-strings
๐
--help
๐
--init-file
๐
--rcfile
๐
--noediting
๐
--noprofile
๐
--norc
๐
--posix
๐
--restricted
๐
-v, --verbose
๐
--version
โ๏ธ
-e
โ๏ธ
--pipefail
โ๏ธ
-B
โ๏ธ
features
status
features
status
features
status
autocd
๐
cdable_vars
๐
cdspell
๐
checkhash
๐
checkjobs
๐
checkwinsize
๐
cmdhist
๐
compat31
๐
compat32
๐
compat40
๐
compat41
๐
dirspell
๐
dotglob
๐
execfail
๐
expand_aliases
๐
extdebug
๐
extglob
โ๏ธ
extquote
๐
failglob
๐
force_fignore
๐
globstar
๐
gnu_errfmt
๐
histappend
๐
histreedit
๐
histverify
๐
hostcomplete
๐
huponexit
๐
interactive_comments
๐
lastpipe
๐
lithist
๐
login_shell
๐
mailwarn
๐
no_empty_cmd_completion
๐
nocaseglob
๐
nocasematch
๐
nullglob
๐
progcomp
๐
promptvars
๐
restricted_shell
๐
shift_verbose
๐
sourcepath
๐
xpg_echo
๐
Born Shell Variables
features
status
features
status
features
status
CDPATH
๐
HOME
โ๏ธ
IFS
๐
MAIL
๐
MAILPATH
๐
OPTARG
๐
OPTIND
๐
PATH
โ๏ธ
PS1
โ๏ธ
PS2
โ๏ธ
Bash Variables
features
status
features
status
features
status
_
โ๏ธ
BASH
๐
BASHOPTS
๐
BASHPID
โ๏ธ
BASH_ALIASES
๐
BASH_ARGC
๐
BASH_ARGV
๐
BASH_ARGV0
๐
BASH_CMDS
๐
BASH_COMMAND
๐
BASH_COMPAT
๐
BASH_ENV
๐
BASH_EXECUTION_STRING
๐
BASH_LINENO
๐
BASH_LOADABLES_PATH
๐
BASH_REMATCH
๐
BASH_SOURCE
๐
BASH_SUBSHELL
โ๏ธ
BASH_VERSINFO
โ๏ธ
BASH_VERSION
โ๏ธ
BASH_XTRACEFD
๐
CHILD_MAX
๐
COLUMNS
๐
COMP_CWORD
๐
COMP_LINE
๐
COMP_POINT
๐
COMP_TYPE
๐
COMP_KEY
๐
COMP_WORDBREAKS
๐
COMP_WORDS
๐
COMPREPLY
๐
COPROC
๐
DIRSTACK
๐
EMACS
๐
ENV
๐
EPOCHREALTIME
โ๏ธ
EPOCHSECONDS
โ๏ธ
EUID
๐
EXECIGNORE
๐
FCEDIT
๐
FIGNORE
๐
FUNCNAME
๐
FUNCNEST
๐
GLOBIGNORE
๐
GROUPS
๐
histchars
๐
HISTCMD
๐
HISTCONTROL
๐
HISTFILE
โ๏ธ
HISTFILESIZE
โ๏ธ
HISTIGNORE
๐
HISTSIZE
๐
HISTTIMEFORMAT
๐
HOSTFILE
๐
HOSTNAME
๐
HOSTTYPE
โ๏ธ
IGNOREEOF
๐
INPUTRC
๐
INSIDE_EMACS
๐
LANG
โ๏ธ
LC_ALL
๐
LC_COLLATE
๐
LC_CTYPE
๐
LC_MESSAGES
๐
LC_NUMERIC
๐
LC_TIME
๐
LINENO
โ๏ธ
LINES
๐
MACHTYPE
โ๏ธ
MAILCHECK
๐
MAPFILE
๐
OLDPWD
โ๏ธ
OPTERR
๐
OSTYPE
โ๏ธ
PIPESTATUS
โ๏ธ
POSIXLY_CORRECT
๐
PPID
๐
PROMPT_COMMAND
๐
PROMPT_DIRTRIM
๐
PS0
๐
PS3
๐
PS4
โ๏ธ
PWD
โ๏ธ
RANDOM
โ๏ธ
READLINE_ARGUMENT
๐
READLINE_LINE
๐
READLINE_MARK
๐
READLINE_POINT
๐
REPLY
๐
SECONDS
โ๏ธ
SHELL
โ๏ธ
SHELLOPTS
๐
SHLVL
โ๏ธ
SRANDOM
โ๏ธ
TIMEFORMAT
๐
TMOUT
๐
TMPDIR
๐
UID
๐
features
status
branch display in prompt
โ๏ธ
Partially in Japanese.
ยฉ 2022-2024 shellgei group