.NET Core Uninstall Tool 1.0


Utilitaire de désinstallation pour les SDK et runtimes .NET Core

Microsoft a annoncé la publication de l’outil .NET Core Uninstall Tool 1.0. Cet utilitaire permet de faire le ménage sur le disque et de retirer d’anciennes versions inutilisées de .NET Core, devenues obsolètes après les mises à jour de Visual Studio ou la publication de nouvelles versions.

Lister les versions installées

Voici quelques commandes utiles :

  • dotnet --info
  • dotnet --list-sdks
  • dotnet --list-runtimes

Il est possible de voir des exemples de résultats dans les annexes de cet article.

L’utilitaire permet aussi d’afficher la liste des SDKs et runtimes installés avec la commande dotnet-core-uninstall list :

C:\Users\User01>dotnet-core-uninstall list

This tool can not uninstall versions of the runtime or SDK that are 
    - SDKs installed using Visual Studio 2019 Update 3 or later.
    - SDKs and runtimes installed via zip/scripts.
    - Runtimes installed with SDKs (these should be removed by removing that SDK).
The versions that can be uninstalled with this tool are:

.NET Core SDKs:
  2.1.511  x64    [Used by Visual Studio 2017. Specify individually or use --force to remove]
  2.1.509  x64
  2.1.508  x64
  2.1.503  x64
  2.1.403  x64
  2.1.302  x64
  2.1.202  x64    [Used by Visual Studio. Specify individually or use --force to remove]
  2.1.201  x64
  2.0.3    x64
  1.1.9    x64
  1.1.5    x64
  1.1.14   x64    [Used by Visual Studio. Specify individually or use --force to remove]
  1.1.11   x64
  1.1.10   x64

.NET Core Runtimes:

ASP.NET Core Runtimes:

.NET Core Runtime & Hosting Bundles:

C:\Users\User01>

Avec le temps, tout cela peut finir par prendre de la place :

Taille dossier DotNet Core SDK

Utilisation

Télécharger l'utilitaire sur le site de GitHub.

Il est possible d’afficher l’aide et la syntaxe des instructions avec la commande dotnet-core-uninstall --help.

Utiliser la commande dry-run pour faire un premier test :

C:\Users\User01>dotnet-core-uninstall dry-run --all --sdk
*** DRY RUN OUTPUT
Specified versions:
  Microsoft .NET Core SDK 2.1.509 (x64)
  Microsoft .NET Core SDK 2.1.508 (x64)
  Microsoft .NET Core SDK 2.1.503 (x64)
  Microsoft .NET Core SDK 2.1.403 (x64)
  Microsoft .NET Core SDK 2.1.302 (x64)
  Microsoft .NET Core SDK - 2.1.201 (x64)
  Microsoft .NET Core SDK - 2.0.3 (x64)
  .NET Core SDK 1.1.9 (x64)
  .NET Core SDK 1.1.5 (x64)
  .NET Core SDK 1.1.11 (x64)
  .NET Core SDK 1.1.10 (x64)
*** END DRY RUN OUTPUT

To avoid breaking Visual Studio or other problems, read https://aka.ms/dotnet-core-uninstall.

Run as administrator and use the remove command to uninstall these items.

Ici, la commande affiche la liste des SDKs qui seront désinstallés.

Attention ! L’utilitaire procédant à la suppression de fichiers et d’éléments sur le poste de travail, il est impératif de faire un dry-run pour tester la commande, et de vérifier que l’utilitaire ne va pas désintaller des éléments encore utiles.

Une fois les vérifications faites, voici un exemple d’utilisation de la commande dotnet-core-uninstall remove pour les SDKs (attention, la commande doit être lancée avec les droits d’administration) :

C:\WINDOWS\system32>dotnet-core-uninstall remove --all --sdk
The following items will be removed:
  Microsoft .NET Core SDK 2.1.509 (x64)
  Microsoft .NET Core SDK 2.1.508 (x64)
  Microsoft .NET Core SDK 2.1.503 (x64)
  Microsoft .NET Core SDK 2.1.403 (x64)
  Microsoft .NET Core SDK 2.1.302 (x64)
  Microsoft .NET Core SDK - 2.1.201 (x64)
  Microsoft .NET Core SDK - 2.0.3 (x64)
  .NET Core SDK 1.1.9 (x64)
  .NET Core SDK 1.1.5 (x64)
  .NET Core SDK 1.1.11 (x64)
  .NET Core SDK 1.1.10 (x64)

To avoid breaking Visual Studio or other problems, read https://aka.ms/dotnet-core-uninstall.

Do you want to continue? [Y/n] Y
Uninstalling: Microsoft .NET Core SDK 2.1.509 (x64).
Uninstalling: Microsoft .NET Core SDK 2.1.508 (x64).
Uninstalling: Microsoft .NET Core SDK 2.1.503 (x64).
Uninstalling: Microsoft .NET Core SDK 2.1.403 (x64).
Uninstalling: Microsoft .NET Core SDK 2.1.302 (x64).
Uninstalling: Microsoft .NET Core SDK - 2.1.201 (x64).
Uninstalling: Microsoft .NET Core SDK - 2.0.3 (x64).
Uninstalling: .NET Core SDK 1.1.9 (x64).
Uninstalling: .NET Core SDK 1.1.5 (x64).
Uninstalling: .NET Core SDK 1.1.11 (x64).
Uninstalling: .NET Core SDK 1.1.10 (x64).

C:\WINDOWS\system32>

Et voilà le résultat :

Taille dossier DotNet Core SDK

Pour aller plus loin

Annexes

Exemple de résultat pour la commande dotnet --info :

C:\Users\User01>dotnet --info
SDK .NET Core (reflétant tous les global.json) :
 Version:   3.1.101
 Commit:    b377529961

Environnement d'exécution :
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.1.101\

Host (useful for support):
  Version: 3.1.1
  Commit:  a1388f194c

.NET Core SDKs installed:
  1.0.0-preview2-003131 [C:\Program Files\dotnet\sdk]
  1.1.5 [C:\Program Files\dotnet\sdk]
  1.1.9 [C:\Program Files\dotnet\sdk]
  1.1.10 [C:\Program Files\dotnet\sdk]
  1.1.11 [C:\Program Files\dotnet\sdk]
  1.1.14 [C:\Program Files\dotnet\sdk]
  2.0.3 [C:\Program Files\dotnet\sdk]
  2.1.201 [C:\Program Files\dotnet\sdk]
  2.1.202 [C:\Program Files\dotnet\sdk]
  2.1.302 [C:\Program Files\dotnet\sdk]
  2.1.403 [C:\Program Files\dotnet\sdk]
  2.1.503 [C:\Program Files\dotnet\sdk]
  2.1.508 [C:\Program Files\dotnet\sdk]
  2.1.509 [C:\Program Files\dotnet\sdk]
  2.1.511 [C:\Program Files\dotnet\sdk]
  3.1.101 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 1.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

C:\Users\User01>

Exemple de résultat pour la commande dotnet --list-sdks :

C:\Users\User01>dotnet --list-sdks
1.0.0-preview2-003131 [C:\Program Files\dotnet\sdk]
1.1.5 [C:\Program Files\dotnet\sdk]
1.1.9 [C:\Program Files\dotnet\sdk]
1.1.10 [C:\Program Files\dotnet\sdk]
1.1.11 [C:\Program Files\dotnet\sdk]
1.1.14 [C:\Program Files\dotnet\sdk]
2.0.3 [C:\Program Files\dotnet\sdk]
2.1.201 [C:\Program Files\dotnet\sdk]
2.1.202 [C:\Program Files\dotnet\sdk]
2.1.302 [C:\Program Files\dotnet\sdk]
2.1.403 [C:\Program Files\dotnet\sdk]
2.1.503 [C:\Program Files\dotnet\sdk]
2.1.508 [C:\Program Files\dotnet\sdk]
2.1.509 [C:\Program Files\dotnet\sdk]
2.1.511 [C:\Program Files\dotnet\sdk]
3.1.101 [C:\Program Files\dotnet\sdk]

Exemple de résultat pour la commande dotnet --list-runtimes

C:\Users\User01>dotnet --list-runtimes
Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 1.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.0.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.0.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.1.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.1.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 1.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]