Skip to content

nickdimeglio/command-line-shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smallsh command line shell in C

Shell Demo Gif

Smallsh is a shell that implements a subset of features of well-known shells such as bash or zsh. The syntax for a command is as follows:

command [arg1 arg2 ... [< input_file] [> output_file] [&]

Any command beginning with # will be ignored. Commands support expansion of the variable $$ into the PID of the shell itself.

If standard input or output is to be redirected, > or < followed by a filename word must appear after all the arguments. Input redirection can appear before or after output redirection.

If the command is to be executed in the background, the last word must be &. If the & character appears anywhere else, it will be treated as normal text.

Smallsh supports three built-in commands: exit, cd, and status. All other commands are implemented using using fork() and exec().

About

a command line shell modeled after bash

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published