Skip to content

A limited implementation of the linux shell. The shell supports command calls with arguments and piping.

Notifications You must be signed in to change notification settings

erengokirmak/river-shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

River-Shell

A limited implementation of a linux shell written in Rust.

Currently supports:

  • Standard linux commands such as ls and cd,
  • Running binaries that are in the current directory / in the PATH,
  • Piping,

Usage

  1. Clone this repository to your machine.
  2. Go to the directory where the directory was cloned,
  3. Use cargo run to run the shell or cargo test to check if the current shell passes the automated tests.
  4. Use q or exit when inside the shell to quit it.

Goals

My primary goals for the project are as such:

  • Implement a search function to find binaries of commands.
  • Implement a command execution for commands without pipes and with arguments.
  • Implement a verifier to check whether a command is valid.
  • Implement piping.
  • (Bonus) implement outputting to a file.

About

A limited implementation of the linux shell. The shell supports command calls with arguments and piping.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages