GithubHelp home page GithubHelp logo

kaio-matos / 42_pipex Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 143 KB

This project aims to deepen your understanding of the two concepts that you already know: Redirections and Pipes.

Makefile 4.16% C 95.84%
c pipes-sh std unix

42_pipex's People

Watchers

 avatar

42_pipex's Issues

Program

The program must be executed as follows:
./pipex file1 cmd1 cmd2 file2

And behave like the shell command:
$> < file1 cmd1 | cmd2 > file2

It must take 4 arguments:
• file1 and file2 are file names.
• cmd1 and cmd2 are shell commands with their parameters.

  • Handle REDIRECTION
  • Handle PIPES
  • Handle files
  • Output Error on STDERR
  • Output the right output status (echo $?)
  • Handle right orders as the sh handles the order list of commands and files to read (bonus of bonus, a preparation for the Minishell, the tip to handle correctly this is that bash handles each command asynchronously depending if the command needs STDIN or not. Ex: ls is a command that do not need an input, but cat may need)

Examples

$> ./pipex infile "ls -l" "wc -l" outfile ------------------------- OK
Should behave like: < infile ls -l | wc -l > outfile
$> ./pipex infile "grep a1" "wc -w" outfile ------------------ OK
Should behave like: < infile grep a1 | wc -w > outfile
$> ./pipex infile "cat -e" "tr ' ' '_'" outfile
Should behave like: < infile cat -e | tr ' ' '_' > outfile

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.