itszero / ZeroShell

ZeroShell is my implementation of a simple shell. It's target is not a complete shell implementation, but just for the Operating system homework. :P

This URL has Read+Write access

name age message
file .gitignore Wed Mar 25 09:26:58 -0700 2009 Initial commit, first working version of ZRSh [itszero]
file MIT-LICENSE Wed Mar 25 09:26:58 -0700 2009 Initial commit, first working version of ZRSh [itszero]
file Makefile Tue Apr 14 00:49:45 -0700 2009 added support of pipe, redir stdin, stdout(also... [itszero]
file README.textile Tue Apr 14 11:07:42 -0700 2009 update README [itszero]
file ZRCommandParser.cpp Tue Apr 14 10:43:19 -0700 2009 add more decription of the method [itszero]
file ZRCommandParser.h Tue Apr 14 00:49:45 -0700 2009 added support of pipe, redir stdin, stdout(also... [itszero]
file zrsh.cpp Tue Apr 14 11:02:12 -0700 2009 Add more color messages [itszero]
README.textile

ZeroShell (ZRSh)

Introduction

ZeroShell is my implementation of a simple shell. However, I’m not focus on making it a useful shell. It’s only coded for practicing and for the Operating System homework.

ZeroShell is also an open source software, under the MIT license.

Library dependencies

ZRSh currently requires libreadline to work.

Compatibility

ZRSh is known to compile and run on Linux(ArchLinux) and Mac OSX.

Features

  • Display a prompt ([User@Host] path>)
  • Execute a built-in command or external commands
  • history command to query the command line histories
  • Exit the shell through Ctrl-C or exit / quit command
  • Support put the process to the background by using ‘&’
  • Search command in MYPATH, PATH environment variables and search in current directory
  • Set/List environment variables through setenv / listenv commands
  • help to see a brief built-in command help
  • When a process is running, hit Ctrl+C to return to ZeroShell.
  • Supports browsing and modify command line by arrow keys
  • Supports TAB auto-completion
  • Detects if terminal supports color, and colorize the message