Giter VIP home page Giter VIP logo

so-shell's Introduction

Operating Systems

  • Miguel López López
  • Xoel Díaz Préstamo

This is a project for the Operating Systems subject in the second year of computer science at Universidad De A Coruña. All the assignments are in the labAssignments folder with descriptions for every function.

The program consists of a shell similar to what bash and zsh do, with some included functions and also the ability to run any other command on the *nix system.

Basic usage

You can get a list of all the included functions by running the command ”ayuda”, and a small description of each one by running ”ayuda command” command being the command you are interested in knowing. You can also run any other command installed in your system like in any other shell as long as the name doesn’t conflict with the included commands. To exit the shell you can run salir, fin, bye or exit

How to run the program

You need to have gcc installed in a *nix operating system like Linux BSD or MacOS You can compile it with:

make

And run it with:

./shell

What is on each file

Our code is divided into different files to make it easier to work and understand.

Contains the main function plus the prompt and processing functions.

Contains all the headers for every function except the list specific ones with a small description. Includer all the libraries that we use. Defines structs and data types that are used in the code.

We opted to use only one implementation of a list to save different kinds of values that are specified on time of creation, you can check the creation of those lists on the main function in p4.c.

Contains the list of commands and the basic functions of those, although most of them depend on auxiliary functions.

Contains all the other functions that don’t fit in the previous categories. We decided to separate a big part of the code in commands.c to make it easier to navigate.

so-shell's People

Contributors

migueldeoleiros avatar xxoel avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.