{"id":17843095,"url":"https://github.com/samagra14/samsh","last_synced_at":"2025-03-20T05:30:55.190Z","repository":{"id":85908123,"uuid":"109658559","full_name":"samagra14/samsh","owner":"samagra14","description":"A hackable basic shell built in C.","archived":false,"fork":false,"pushed_at":"2017-11-06T06:58:30.000Z","size":3,"stargazers_count":7,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-17T15:06:53.208Z","etag":null,"topics":["c","linux","shell"],"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/samagra14.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":"2017-11-06T06:54:32.000Z","updated_at":"2018-05-28T10:14:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"5774d17c-d9a6-4279-89cd-e7ff9005cd91","html_url":"https://github.com/samagra14/samsh","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samagra14%2Fsamsh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samagra14%2Fsamsh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samagra14%2Fsamsh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samagra14%2Fsamsh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/samagra14","download_url":"https://codeload.github.com/samagra14/samsh/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244559751,"owners_count":20472208,"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","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":["c","linux","shell"],"created_at":"2024-10-27T21:22:10.530Z","updated_at":"2025-03-20T05:30:55.180Z","avatar_url":"https://github.com/samagra14.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# samsh - A basic C shell\n---\nSAMSH is a simple implementation of a shell in C.t demonstrates the basics of how a shell works.That is: read, parse, fork, exec, and wait.  Since its purpose is learning (not feature completeness or even fitness for casual use), it has many limitations, including:\n* Commands must be on a single line.\n* Arguments must be separated by whitespace.\n* No quoting arguments or escaping whitespace.\n* No piping or redirection.\n* Only builtins are: `cd`, `help`, `exit`.\n\n## Contributing\nNew contributions are always welcome from fellow developers who are interested in learning the dynamics of a shell. Just follow the given guidelines :\n* Create your own fork of the repo\n* Migrate to a new branch\n* Implement your changes\n* Open a pull request for the changes and provide a detailed enough description of your work.\n\n## Todos\nThere is a lot of scope of improvement in the shell. Pick one from the list below:\n1. Implementing Tab completion\n2. You can implement one of the following builtins :\n    * `alias`\n    * `logout`\n    * `enable`\n    * `declare`\n3. Implementing config files.\n4. Implementing history-record and up arrow command display.\n\n## License\n\nThis code is in the public domain (see [UNLICENSE](UNLICENSE) for more details). This means you can use, modify, and distribute it without any restriction. I appreciate, but don't require, acknowledgement in derivative works.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamagra14%2Fsamsh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamagra14%2Fsamsh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamagra14%2Fsamsh/lists"}