Git Product home page Git Product logo

cicada's Introduction

Cicada Unix Shell

Travis Build Status Latest Version

Cicada is a simple Unix shell written in Rust. It's ready for daily use.

Documents

Features

run programs and pipelines

$ ls | head -n3
Desktop
Documents
Downloads

$ echo foo bar | awk -F " " '{print $2, $1}'
bar foo

with redirections

$ ls file-not-exist 2>&1 | wc > e.txt
$ cat e.txt
       1       7      46

command substitution

$ ls -l `which sh`
-r-xr-xr-x  1 root  wheel  630464 Mar 23 07:57 /bin/sh

run multiple commands (with logical)

$ echo foo; echo bar
foo
bar

$ echo foo && echo bar
foo
bar

$ echo foo || echo bar
foo

shell expansions

$ echo sp{el,il,al}l
spell spill spall

$ echo $SHELL
/usr/local/bin/cicada

$ echo *
Cargo.lock Cargo.toml LICENSE Makefile README.md src target

do math arithmetic directly in the shell!

$ 1 + 2 * 3 - 4
3
$ (1 + 2) * (3 - 4) / 8.0
-0.375

Install Cicada

Note: Rust environment is needed for installation.

You can try cicada out without installing it by checking out the repository and run cargo run in its root directory.

$ git clone https://github.com/mitnk/cicada
$ cd cicada
$ cargo run

install from code repository

If you've checked out the cicada repository, you can do this:

$ make install

This will install cicada under your /usr/local/bin. Use sudo if needed.

install via cargo crates

$ cargo install -f cicada

This will install cicada into ~/.cargo/bin/.

Set cicada as your login shell

Appending /usr/local/bin/cicada into your /etc/shells, then run

$ chsh -s /usr/local/bin/cicada

To do list

  • job controls (Ctrl-Z, fg, bg etc)
  • and less...

Won't do list

  • functions
  • Windows support
  • and more...

cicada's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.