SIMPLE_SHELL PROJECT
-A shell project done in C tasked to two partners by ALX -This is to put into test what we have learned so far
SYNOPSIS
-This is more or less a replica of UNIX command line interpreter with functional commands.
DESCRIPTION
This program can interpret and execute commands from the standard input. The program runs based on bash commands obtained from the input stream by the user. the commands are then read line by line and if its a valid command it gets executed by the program from the terminal or file
REQUIREMENTS FOR THE PROJECT
~ All files will be compiled on Ubuntu 20.04 LTS using gcc, using the options -Wall -Werror -Wextra -pedantic -std=gnu89
~ All files should end with a new line
~ A README.md file, at the root of the folder of the project is mandatory
~ Use the Betty style. It will be checked using betty-style.pl and betty-doc.pl
~ Shell should not have any memory leaks
~ No more than 5 functions per file
~ All header files should be include guarded
TOOLS USED
~ C language
~ shell
~ VI editor
~ Betty linter the code checker
LIST OF ALLOWED FUNCTIONS AND SYSTEM CALLS
~ access (man 2 access)
~ chdir (man 2 chdir)
~ close (man 2 close)
~ closedir (man 3 closedir)
~ execve (man 2 execve)
~ exit (man 3 exit)
~ _exit (man 2 _exit)
~ fflush (man 3 fflush)
~ fork (man 2 fork)
~ free (man 3 free)
~ getcwd (man 3 getcwd)
~ getline (man 3 getline)
~ getpid (man 2 getpid)
~ isatty (man 3 isatty)
~ kill (man 2 kill)
~ malloc (man 3 malloc)
~ open (man 2 open)
~ opendir (man 3 opendir)
~ perror (man 3 perror)
~ read (man 2 read)
~ readdir (man 3 readdir)
~ signal (man 2 signal)
~ stat (__xstat) (man 2 stat)
~ lstat (__lxstat) (man 2 lstat)
~ fstat (__fxstat) (man 2 fstat)
~ strtok (man 3 strtok)
~ wait (man 2 wait)
~ waitpid (man 2 waitpid)
~ wait3 (man 2 wait3)
~ wait4 (man 2 wait4)
~ write (man 2 write)
CHECKS
The Checker will be released at the end of the project (1-2 days before the deadline). We strongly encourage the entire class to work together to create a suite of checks covering both regular tests and edge cases for each task. See task 8. Test suite.
AUTHORS
Abubakar Kadzo
Vivian Okall