{"id":25683438,"url":"https://github.com/ejarvinen/42pipex","last_synced_at":"2026-06-08T20:32:21.264Z","repository":{"id":264461323,"uuid":"794006979","full_name":"ejarvinen/42Pipex","owner":"ejarvinen","description":"A project simulating the piping of two UNIX commands with redirections","archived":false,"fork":false,"pushed_at":"2025-02-03T17:35:09.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-24T16:56:34.958Z","etag":null,"topics":["child-process","error-handling","filedescriptor","input-validation"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ejarvinen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-30T09:27:02.000Z","updated_at":"2025-02-03T17:35:13.000Z","dependencies_parsed_at":"2025-02-03T18:29:10.100Z","dependency_job_id":"2a3a892a-2c09-4afa-a0bb-861102407bda","html_url":"https://github.com/ejarvinen/42Pipex","commit_stats":null,"previous_names":["ejarvinen/42pipex"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ejarvinen/42Pipex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejarvinen%2F42Pipex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejarvinen%2F42Pipex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejarvinen%2F42Pipex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejarvinen%2F42Pipex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ejarvinen","download_url":"https://codeload.github.com/ejarvinen/42Pipex/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejarvinen%2F42Pipex/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34080027,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["child-process","error-handling","filedescriptor","input-validation"],"created_at":"2025-02-24T16:51:48.479Z","updated_at":"2026-06-08T20:32:21.246Z","avatar_url":"https://github.com/ejarvinen.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 42Pipex\n## Description\n**Pipex** is a project that explores the inner workings of UNIX pipes by replicating the behavior of shell piping. The program takes in file inputs and commands and executes them through pipes, mimicking the shell's command execution process.\n\n## Features\n- Simulates the shell pipeline behavior: `\u003c file1 cmd1 | cmd2 \u003e file2`.\n- Handles file input and output redirections.\n- Supports execution of external commands.\n- Proper error handling and memory management.\n\n## Installation\n1. Clone the repository:\n```\ngit clone https://github.com/ejarvinen/42Pipex.git\ncd 42Pipex\n```\n2. Update and initialize submodules:\n```\ngit submodule init\ngit submodule update\n```\n3. Build the project using the Makefile:\n```\nmake\n```\n## Usage\nRun the program with the following syntax:\n```\n./pipex file1 \"cmd1\" \"cmd2\" file2\n```\nThis will behave like:\n```\n\u003c file1 cmd1 | cmd2 \u003e file2\n```\n### Examples\n```\n./pipex infile \"ls -l\" \"wc -l\" outfile\n```\nEquivalent to:\n```\n\u003c infile ls -l | wc -l \u003e outfile\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejarvinen%2F42pipex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fejarvinen%2F42pipex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejarvinen%2F42pipex/lists"}