Skip to content

tang184/MyShell-master

Repository files navigation

MyShell

Wrote my own shell implementation for my CS252 Systems Programming course.

##Part 1: Lex and Yacc Create a scanner and parser for the shell

##Part 2: Executing commands

  • Simple command process creation and execution using fork() and execvp()
  • I/O File redirection
  • Pipes

##Part 3: Ctrl-C, Wildcards, Zombie Elimination, etc.

  • Ctrl-C (Using SIGINT to kill the running command)
  • Builtin Commands: setenv, unsetenv, printenv, cd, jobs
  • Wildcarding
  • Subshells
  • Zombie Elimination
  • Allow Quotes in Commands
  • Escape characters
  • Environment variable expansion
  • Tilde expansion
  • isatty()
  • Implement a line editor (up, down, left, and right arrow keys, delete (ctrl-D), backspace, home key (ctrl-A), end key (ctrl-E)
  • Variable prompt
  • Robustness

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published