A simple .NET tool to execute other dotnet tools without installing them globally or in a project (a similar approach to npx from npm).
This simple tool provides the minimum necessary to run dotnet tools without the need of installing them globally or in a project, since this is not yet supported in dotnet cli.
-
Cache. This tool provides caching of used tools in a temporary directory (for better performance).
-
Version and framework selection. You can specify whatever version you want and the target framework to use in every run.
-
SourceLink for debugging. The binaries can be debbuged with Source Link. Example (with Developer Command Prompt for VS):
devenv /debugexe c:\Users\rich\.dotnet\tools\dotnex.exe
-
Symbols package. A symbols package is published too in the publish process in order to ease the debugging of the NuGet package.
dotnex [options] <TOOL> [<TOOL-ARGS>...]
Where the arguments and options are the following:
Arguments:
<TOOL> The NuGet Package Id of the tool to execute []
<TOOL-ARGS> Arguments to pass to the tool to execute
Options:
-v, --use-version <use-version> Version of the tool to use
-f, --framework <framework> Target framework for the tool
-r, --remove-cache Flag to remove the local cache before running the tool (can be run without tool)
--version Show version information
-?, -h, --help Show help and usage information
This same output can be obtained running the tool with the help option:
dotnex -h
Example with the simple dotnetsay
tool:
dotnex dotnetsay Hello World!!
Install the dotnet cli (included in the .NET SDK) and then run the following command:
dotnet tool install -g dotnex
dotnex
is published for all current supported SDKs from Microsoft:
- .NET Core 3.1.x
- .NET 5.0.x
- .NET 6.0.x
The main idea is to maintain dotnex
up-to-date with all current supported SDKs from Microsoft.
Feel free to open an issue or a PR if you want to without any problem :)
This project is licensed under the MIT License.
See the LICENSE
file in the root of this repository.