Cicada is a simple Unix shell written in Rust.
$ docker run --rm -it mitnk/cicada
(in-cicada) $ cinfo
$ ls | head -n3
Desktop
Documents
Downloads
$ echo foo,bar | awk -F "," '{print $2, $1}'
bar foo
$ ls file-not-exist 2>&1 | wc > e.txt
$ cat e.txt
1 7 46
$ ls -l `which sh`
-r-xr-xr-x 1 root wheel 618512 Oct 26 2017 /bin/sh
$ echo "Time is $(date)."
Time is Sun Sep 2 12:04:13 CST 2018.
$ echo foo; echo bar
foo
bar
$ echo foo && echo bar
foo
bar
$ echo foo || echo bar
foo
$ 1 + 2 * 3 - 4
3
$ (1 + 2) * (3 - 4) / 8.0
-0.375
$ 2 ^ 31
2147483648
Read APIs here: https://docs.rs/cicada/.