Skip to content

Repository files navigation

Logo

C_zsh

License Build Status

A Unix shell compatible with TCSH, written in C as part of the Epitech PSU project.
Explore the repository »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

C_zsh (42sh) is a Unix shell written in C, designed to behave like TCSH. It implements an interactive REPL with a styled prompt, line editing, persistent history, pipelines, redirections, quoting, $VAR expansion, and a set of built-in commands (cd, env, setenv, unsetenv, which, where, repeat, foreach, history, source, and more).

Built With

C Make

Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

You need a C compiler (gcc or clang) and GNU Make. Valgrind is recommended for memory-leak checks during development.

Installation

Development mode (clone the repo, with local changes)

  1. Clone the repository
git clone https://github.com/OpenCz/C_zsh.git
cd C_zsh
  1. Build the project
make

Release mode (build and use the binary)

make          # build the ./42sh binary
./42sh        # start the interactive shell

Usage

Launch the shell with ./42sh for interactive use. See the Project Architecture and Execution Flow docs for details on the internals.

For more advanced examples, please refer to the repository structure and adapt the code as needed.

Roadmap

See the open issues for a full list of proposed features (and known issues).

Contributing

Contributions are welcome and appreciated. Please review the contribution guide and follow the repository conventions when making changes.

See CONTRIBUTING.md for setup instructions, commit conventions, and the PR process.

Top contributors:

contrib.rocks image

License

Distributed under the MIT License. See LICENSE for more information.

Acknowledgments

  • tcsh manual - Reference behavior for expansion order, builtins, and error messages

About

No Game, Too Easy

Resources

Code of conduct

Contributing

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages