{"id":21006245,"url":"https://github.com/derlin/os-tp-shell","last_synced_at":"2025-09-20T02:10:05.715Z","repository":{"id":24827271,"uuid":"28241841","full_name":"derlin/OS-TP-shell","owner":"derlin","description":"A simple shell implemented for the course 'Operating Systems 2, EIA-FR'","archived":false,"fork":false,"pushed_at":"2014-12-19T18:51:20.000Z","size":204,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-13T14:43:35.932Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/derlin.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}},"created_at":"2014-12-19T18:48:49.000Z","updated_at":"2024-06-22T02:46:17.000Z","dependencies_parsed_at":"2022-08-06T05:00:45.030Z","dependency_job_id":null,"html_url":"https://github.com/derlin/OS-TP-shell","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/derlin/OS-TP-shell","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derlin%2FOS-TP-shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derlin%2FOS-TP-shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derlin%2FOS-TP-shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derlin%2FOS-TP-shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/derlin","download_url":"https://codeload.github.com/derlin/OS-TP-shell/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derlin%2FOS-TP-shell/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276033070,"owners_count":25573474,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-20T02:00:10.207Z","response_time":63,"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":[],"created_at":"2024-11-19T08:50:03.946Z","updated_at":"2025-09-20T02:10:05.649Z","avatar_url":"https://github.com/derlin.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"This is a simple shell, which normally handles common commands and does not crash upon errors. The skeleton was provided. \n\nContext:        Techniques avancées de programmation, \n                Systèmes d'exploitation 2, I3\nOrganization:   EIA-FR\nDate:           19 Dec. 2014\nAuthor:         Lucy Linder\n\nPurpose: \nThis TP should help us understand the logic behind a shell and learn the basics of system calls in Linux using the C language.\n\n----------------------------------------------------------------------------\n\n# Tasks\nA skeleton is provided. Students have to:\n- implement the invoke command (execute external commands), allowing pipes and redirects\n- add support for variable expansion\n- implement history and the commands h1-h10\n- add support for redirect in built-in commands\n- implement the cd command\n\n----------------------------------------------------------------------------\n\n# Notes\n\nI added a comment at the top of each created/modified file, which explains the purpose, modifications, todos and/or bugs that could persist. Please, refer to them if you have a doubt.\n\nThe makefile provided two commands: all and clean.\nThe .o and .d are created in the bin/ directory. If you run it on different systems, don't forget to make clean before trying to compile again.\n\nI noticed some bugs in the provided implementation and also improved the way it coped with user errors. For more details, see the file headers (mostly my_shell.c).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderlin%2Fos-tp-shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fderlin%2Fos-tp-shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderlin%2Fos-tp-shell/lists"}