{"id":17817658,"url":"https://github.com/saru-d2/cshell","last_synced_at":"2025-04-02T09:42:42.732Z","repository":{"id":108575280,"uuid":"291659520","full_name":"saru-d2/cShell","owner":"saru-d2","description":"A bash like shell written in C","archived":false,"fork":false,"pushed_at":"2020-10-10T20:33:36.000Z","size":536,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T00:43:22.951Z","etag":null,"topics":["cshell","piping","redirection"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saru-d2.png","metadata":{"files":{"readme":"README.md","changelog":"history.c","contributing":null,"funding":null,"license":"LICENSE","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":"2020-08-31T08:33:05.000Z","updated_at":"2021-05-08T16:24:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"f72a6234-db10-457a-bf8e-7046e6426e7a","html_url":"https://github.com/saru-d2/cShell","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/saru-d2%2FcShell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru-d2%2FcShell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru-d2%2FcShell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saru-d2%2FcShell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saru-d2","download_url":"https://codeload.github.com/saru-d2/cShell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246793402,"owners_count":20834925,"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":["cshell","piping","redirection"],"created_at":"2024-10-27T16:44:40.492Z","updated_at":"2025-04-02T09:42:42.701Z","avatar_url":"https://github.com/saru-d2.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cShell\nA shell written in C\n\nFor the OS and networks course\n\nFor linux, with limited functionality on macOS.\nInstructions to use: \n  -\u003e clone the repo\n  -\u003e cd to the repository's directory\n  -\u003e make\n  -\u003e execute ./csh\n  \nmain() resides in cShell.c\n\nthe main loop resides in loop.c\n\ncd, echo, pwd, ls reside in their respective .c files.\n\nall the headers are in header.h\n\nThe shell prompt includes the username and system name along with the pwd relative to the address the shell runs from (hereafter reffered to as home_dir)\n\ncd works with '.', '..', '~', '-' and relative/ absolute paths.\n\nls works with any permutations of the flags -a and -l. It also supports multiple arguments.\n\npinfo by default gives the process info of the shell.\nIf an argument is specified it gives process info of the process with the pid of the argument.\n\nsupports ctrlC, ctrlZ, ctrlD.\n\nnightswatch :\n  interrupt - prints the number of times each CPU thread has been interrupted by the keyboard controller, by default in intervals of 1 second. It exits on pressing q.\n  newborn - prints the pid of the process most recently created on the system, by default in intervals of 1 second. It exits on pressing q.\n\nhistory :\n  outputs the n latest commands run on the shell. default value of n is 10 and the maximum value is 20.\n\nI/O redirection:\n  supports I/O redirection like bash with \u003c, \u003e, \u003c\u003c symbols.\n\nPiping:\n  supports piping.\n\nsetenv/ unsetenv:\n  sets or unsets an environment variable.\n\njobs:   \n  displays all background processes.\n\nkjob:\n  kills a background job with kill().\n\nfg: \n  brings a background job to the foreground.\n\nbg:\n  changes the status of a background task from stopped to running.\n\noverkill:\n  kills all background jobs.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaru-d2%2Fcshell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaru-d2%2Fcshell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaru-d2%2Fcshell/lists"}