{"id":22169614,"url":"https://github.com/matveyt/shebang","last_synced_at":"2025-07-26T13:32:35.719Z","repository":{"id":242213082,"uuid":"115949634","full_name":"matveyt/shebang","owner":"matveyt","description":"A small helper for MSYS2/Cygwin that allows direct execution of shell scripts by Windows applications.","archived":false,"fork":false,"pushed_at":"2024-11-29T13:32:29.000Z","size":63,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-29T14:35:25.927Z","etag":null,"topics":["cygwin","msys2","posix","shebang"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matveyt.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2018-01-01T21:36:01.000Z","updated_at":"2024-11-29T13:32:33.000Z","dependencies_parsed_at":"2024-06-01T12:19:16.402Z","dependency_job_id":"b0ae0ccb-dd0f-4a7b-9ed8-c8471a0a6c14","html_url":"https://github.com/matveyt/shebang","commit_stats":null,"previous_names":["matveyt/shebang"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matveyt%2Fshebang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matveyt%2Fshebang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matveyt%2Fshebang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matveyt%2Fshebang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matveyt","download_url":"https://codeload.github.com/matveyt/shebang/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227685937,"owners_count":17804134,"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":["cygwin","msys2","posix","shebang"],"created_at":"2024-12-02T06:33:41.443Z","updated_at":"2024-12-02T06:33:42.715Z","avatar_url":"https://github.com/matveyt.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"shebang\n=======\n\nSummary\n-------\nAn utility for *MSYS2/Cygwin* which allows to execute POSIX shell scripts transparently.\n\nDescription\n-----------\n*MSYS* comes with its own port of *bash* which is able to execute shell scripts. However,\nunlike ported binaries, no POSIX shell script can be executed directly from the native\nWindows command-line interpretator *cmd* (or from other Windows programs, such as *FAR*,\netc.).\n\nIt's quite easy to come up with the \"wrapper script\" solution, for example:\n\n    @rem shebang.cmd\n    @env MSYSTEM=MINGW64 %~n0 %*\n\nwill execute any POSIX script (or native binary) called \"shebang\" found on PATH. However,\nany (incorrectly ported) application will fail if it tries to execute such script by\nspawning it directly, which is normal for the POSIX world, but not for Windows, where one\nneeds to provide an explicit command, such as `cmd /C shebang.cmd`. This is where\n*shebang* comes to help.\n\nBuilding\n--------\n*Shebang* was successfully built and tested with *GCC/MinGW 14.1.0*.\n\nSimply invoke *make* to compile.\n\nUsing\n-----\nRename or symlink *shebang*, so its name matches the script you want and put it on PATH.\nNow upon execution *shebang* will find the script on PATH, parse its first (aka\n\"shebang\") line, and execute it with own command-line arguments.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatveyt%2Fshebang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatveyt%2Fshebang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatveyt%2Fshebang/lists"}