Back to projects

Selected work · 02 / 04

Minishell

A small Unix-style shell that puts process control into practice.

CUnixProcesses
Terminal showing commands running in Minishell
Commands running in Minishell

The idea

Minishell recreates the core experience of working in a Unix shell. It reads commands, starts programs, and connects them into pipelines so a sequence of small tools can solve a larger task.

Under the hood

The shell handles pipes, input and output redirection, and heredocs. It also uses system calls including fork, execve, dup, wait, and signals to manage child processes without ending the shell itself.