takeisa / rusty_bash

bash written with Rust

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rusty Bash

may be a clone of Bash.

author / maintainer

how to try it

$ git clone https://github.com/shellgei/rusty_bash.git
$ cd rusty_bash
$ cargo build --release
$ ./target/release/rusty_bash 

Rusty Bash reads .rusty_bashrc in your home directory if it exists.

list of features

  • โœ”๏ธ :available
  • ๐Ÿšง :partially available (or having known bugs)
  • ๐Ÿ™… : not implemented

compound commands

features status features status features status
if โœ”๏ธ while โœ”๏ธ () โœ”๏ธ
{} โœ”๏ธ case ๐Ÿšง until ๐Ÿ™…
for ๐Ÿ™… (()) ๐Ÿšง [[]] ๐Ÿ™…

control operator

features status features status features status
|| โœ”๏ธ && โœ”๏ธ ; โœ”๏ธ
;; โœ”๏ธ | โœ”๏ธ & โœ”๏ธ
|& ๐Ÿ™…

options

features status features status features status
i โœ”๏ธ x ๐Ÿšง: v ๐Ÿšง:

special parameters and position parameters

features status features status features status
* โœ”๏ธ @ โœ”๏ธ ? โœ”๏ธ
- โœ”๏ธ 0 โœ”๏ธ 1, 2, 3, ... โœ”๏ธ
# โœ”๏ธ $ โœ”๏ธ ! ๐Ÿ™…
_ โœ”๏ธ

builtin commands

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 โœ”๏ธ

variables

features status features status features status
OLDPWD โœ”๏ธ PWD โœ”๏ธ BASH ๐Ÿ™…
BASHOPTS ๐Ÿ™… BASHPID ๐Ÿ™… BASH_ALIASES ๐Ÿ™…
BASH_ARGC ๐Ÿ™… BASH_ARGV ๐Ÿ™… BASH_ARGV0 ๐Ÿ™…
BASH_CMDS ๐Ÿ™… BASH_COMMAND ๐Ÿ™… BASH_EXECUTION_STRING ๐Ÿ™…
BASH_LINENO ๐Ÿ™… BASH_LOADABLES_PATH ๐Ÿ™… BASH_REMATCH ๐Ÿ™…
BASH_SOURCE ๐Ÿ™… BASH_SUBSHELL ๐Ÿ™… BASH_VERSINFO ๐Ÿ™…
BASH_VERSION ๐Ÿ™… COMP_CWORD ๐Ÿ™… COMP_KEY ๐Ÿ™…
COMP_LINE ๐Ÿ™… COMP_POINT ๐Ÿ™… COMP_TYPE ๐Ÿ™…
COMP_WORDBREAKS ๐Ÿ™… COMP_WORDS ๐Ÿ™… COPROC ๐Ÿ™…
DIRSTACK ๐Ÿ™… EPOCHREALTIME ๐Ÿ™… EPOCHSECONDS ๐Ÿ™…
EUID ๐Ÿ™… FUNCNAME ๐Ÿ™… GROUPS ๐Ÿ™…
HISTCMD ๐Ÿ™… HOSTNAME ๐Ÿ™… HOSTTYPE ๐Ÿ™…
LINENO ๐Ÿ™… MACHTYPE ๐Ÿ™… MAPFILE ๐Ÿ™…
OPTARG ๐Ÿ™… OPTIND ๐Ÿ™… OSTYPE ๐Ÿ™…
PIPESTATUS ๐Ÿ™… PPID ๐Ÿ™… RANDOM ๐Ÿ™…
READLINE_LINE ๐Ÿ™… READLINE_POINT ๐Ÿ™… REPLY ๐Ÿ™…
SECONDS ๐Ÿ™… SHELLOPTS ๐Ÿ™… SHLVL ๐Ÿ™…
UID ๐Ÿ™… BASH_COMPAT ๐Ÿ™… BASH_ENV ๐Ÿ™…
BASH_XTRACEFD ๐Ÿ™… CDPATH ๐Ÿ™… CHILD_MAX ๐Ÿ™…
COLUMNS ๐Ÿ™… COMPREPLY ๐Ÿ™… EMACS ๐Ÿ™…
ENV ๐Ÿ™… EXECIGNORE ๐Ÿ™… FCEDIT ๐Ÿ™…
FIGNORE ๐Ÿ™… FUNCNEST ๐Ÿ™… GLOBIGNORE ๐Ÿ™…
HISTCONTROL ๐Ÿ™… HISTFILE ๐Ÿ™… HISTFILESIZE ๐Ÿ™…
HISTIGNORE ๐Ÿ™… HISTSIZE ๐Ÿ™… HISTTIMEFORMAT ๐Ÿ™…
HOME ๐Ÿ™… HOSTFILE ๐Ÿ™… IFS ๐Ÿšง
IGNOREEOF ๐Ÿ™… INPUTRC ๐Ÿ™… INSIDE_EMACS ๐Ÿ™…
LANG ๐Ÿ™… LC_ALL ๐Ÿ™… LC_COLLATE ๐Ÿ™…
LC_CTYPE ๐Ÿ™… LC_MESSAGES ๐Ÿ™… LC_NUMERIC ๐Ÿ™…
LC_TIME ๐Ÿ™… LINES ๐Ÿ™… MAIL ๐Ÿ™…
MAILCHECK ๐Ÿ™… MAILPATH ๐Ÿ™… OPTERR ๐Ÿ™…
PATH โœ”๏ธ POSIXLY_CORRECT ๐Ÿ™… PROMPT_COMMAND ๐Ÿ™…
PROMPT_DIRTRIM ๐Ÿ™… PS0 ๐Ÿ™… PS1 ๐Ÿ™…
PS2 ๐Ÿ™… PS3 ๐Ÿ™… PS4 ๐Ÿ™…
SHELL ๐Ÿ™… TIMEFORMAT ๐Ÿ™… TMOUT ๐Ÿ™…
TMPDIR ๐Ÿ™… auto_resume ๐Ÿ™… histchars ๐Ÿ™…

others

features status
coproc ๐Ÿ™…

thanks to

Partially in Japanese.

About

bash written with Rust

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Rust 87.2%Language:Shell 12.8%