{"id":20830418,"url":"https://github.com/javiertuya/dotnet-background","last_synced_at":"2025-06-26T23:10:09.723Z","repository":{"id":39663732,"uuid":"444498971","full_name":"javiertuya/dotnet-background","owner":"javiertuya","description":"An easy way to launch dotnet run background processes and kill each process and their descendants with a single command","archived":false,"fork":false,"pushed_at":"2025-05-03T05:30:27.000Z","size":56,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T22:12:55.170Z","etag":null,"topics":["background","dotnet","kill","parallel","process","run"],"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/javiertuya.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}},"created_at":"2022-01-04T17:01:03.000Z","updated_at":"2025-05-03T05:30:30.000Z","dependencies_parsed_at":"2023-02-18T08:31:35.827Z","dependency_job_id":"331a95d4-7ddb-4ddd-87f5-ccf8bc964c55","html_url":"https://github.com/javiertuya/dotnet-background","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javiertuya%2Fdotnet-background","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javiertuya%2Fdotnet-background/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javiertuya%2Fdotnet-background/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javiertuya%2Fdotnet-background/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/javiertuya","download_url":"https://codeload.github.com/javiertuya/dotnet-background/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252961843,"owners_count":21832198,"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":["background","dotnet","kill","parallel","process","run"],"created_at":"2024-11-17T23:24:28.564Z","updated_at":"2025-05-07T22:13:00.589Z","avatar_url":"https://github.com/javiertuya.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Status](https://github.com/javiertuya/dotnet-background/actions/workflows/test.yml/badge.svg)\n[![Nuget](https://img.shields.io/nuget/v/DotnetBackground)](https://www.nuget.org/packages/DotnetBackground/)\n\n# dotnet-background\n\nAn easy way to launch dotnet run background processes and kill each process and their descendants with a single command.\n\n## Usage\n\nInstall as a [.Net Core tool](https://docs.microsoft.com/es-es/dotnet/core/tools/dotnet-tool-install):\n```\ndotnet tool install --global DotnetBackground\n```\n\nFor each project to be launched, run the tool as if it were run using `dotnet` command. \nThis example launches two projects, with some dotnet options and arguments passed to the second process:\n\n```\nDotnetBackground run --project project1/project1.csproj\nDotnetBackground run --project project2/project2.csproj --no-restore param1 param2\n```\n\nAll projects will run in the background under a shell (cmd on windows or bash on unix), producing the following files:\n\n- `dotnet-projectN-out.log`: the standard output of each project N\n- `dotnet-projectN-err.log`: the standard error output of each project N\n- `dotnet-background-pids.log`: stores the PID of each process to enable kill all processes with a single command\n\nTo kill all processes, use a single kill command. If any process has child processes, they will be killed too:\n\n```\nDotnetBackground kill\n```\n\n## Additional options\n\n`DotnetBackground` allows some additional options that can be added to the command line (these options are not send to `dotnet`)\n\n- `--out \u003cpath\u003e`: Sets the output folder where the log files are stored. Default is the current folder.\n- `--name \u003cname\u003e`: Sets the name of the process (used to identfy the log files). By default it is the name of the project. \nNote that if several instances of the the same project are launched, they need to specify different names.\n\nThis example launches two instances of the same process with different arguments and moves all logs to the `reports` folder:\n\n```\nDotnetBackground run --project project1/project1.csproj --name instance1 --out report --no-restore param1\nDotnetBackground run --project project1/project1.csproj --name instance2 --out report --no-restore param2\n```\n\nNote that it is not required the projects being previously built, but is recommendable do so when launching multiple instances of the same project to avoid interferences during startup.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaviertuya%2Fdotnet-background","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaviertuya%2Fdotnet-background","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaviertuya%2Fdotnet-background/lists"}