Herramienta de desinstalación de .NET

La herramienta de desinstalación de .NET (dotnet-core-uninstall) permite quitar sdk y entornos de ejecución de .NET de un sistema. Hay una colección de opciones disponible para especificar las versiones que desea desinstalar.

La herramienta es compatible con Windows y macOS. Linux no se admite actualmente.

En Windows, la herramienta solo puede desinstalar sdk y entornos de ejecución que se instalaron mediante uno de los siguientes instaladores:

  • El instalador del SDK y del entorno de ejecución de .NET.
  • El instalador de Visual Studio en versiones anteriores a Visual Studio 2019, versión 16.3.

En macOS, la herramienta solo puede desinstalar los SDK y entornos en tiempo de ejecución ubicados en la carpeta /usr/local/share/dotnet.

Debido a estas limitaciones, es posible que la herramienta no pueda desinstalar todos los SDK y entornos de ejecución de .NET en el equipo. Puede usar el dotnet --info comando para buscar todos los SDK y entornos de ejecución de .NET instalados, incluidos los SDK y los entornos de ejecución que la herramienta no puede quitar. El comando dotnet-core-uninstall list muestra qué SDK se pueden desinstalar con la herramienta. La versión 1.2 y posteriores pueden desinstalar SDK y entornos de ejecución con la versión 5.0 o anteriores, mientras que las versiones anteriores de la herramienta pueden desinstalar la versión 3.1 y anteriores.

Instalación de la herramienta

Puede descargar la herramienta de desinstalación de .NET desde la página de versiones de la herramienta y encontrar el código fuente en el repositorio de GitHub dotnet/cli-lab .

Nota

La herramienta requiere elevación para desinstalar los SDK y los entornos de ejecución de .NET. Por lo tanto, debe instalarse en un directorio protegido contra escritura, como C:\Archivos de programa en Windows o /usr/local/bin en macOS. Para obtener más información, consulte el acceso con privilegios elevados para los comandos dotnet y las instrucciones de instalación detalladas.

Ejecución de la herramienta

En los pasos siguientes se muestra el enfoque recomendado para ejecutar la herramienta de desinstalación:

Paso 1: Mostrar los SDK y los entornos de ejecución de .NET instalados

El comando dotnet-core-uninstall list enumera los SDK y los entornos de ejecución de .NET instalados que se pueden quitar con esta herramienta. Visual Studio podría requerir algunos SDK y entornos de ejecución y se muestran con una nota de por qué no se recomienda desinstalarlos.

Nota:

La salida del dotnet-core-uninstall list comando no coincidirá con la lista de versiones instaladas en la salida de en la mayoría de dotnet --info los casos. En concreto, esta herramienta no mostrará las versiones instaladas por archivos ZIP ni administradas por Visual Studio (cualquier versión instalada con Visual Studio 2019 versión 16.3 o posterior). Una manera de comprobar si una versión está administrada por Visual Studio es verla en Add or Remove Programs, donde las versiones administradas de Visual Studio se marcan como tales en sus nombres para mostrar.

Para obtener más información, vea la lista de comandos que figura más adelante en este artículo.

Paso 2: Realizar un simulacro

Los comandos dotnet-core-uninstall dry-run y dotnet-core-uninstall whatif muestran los SDK y los entornos de ejecución de .NET que se quitarán en función de las opciones proporcionadas sin realizar la desinstalación. Estos comandos son sinónimos.

Para obtener más información, consulte dry-run y los whatifcomandos más adelante en este artículo.

Paso 3: Desinstalar los SDK y los entornos de ejecución de .NET

dotnet-core-uninstall remove desinstala los SDK y los entornos de ejecución de .NET especificados por una colección de opciones. La versión 1.2 y posteriores pueden desinstalar SDK y entornos de ejecución con la versión 5.0 o anteriores, mientras que las versiones anteriores de la herramienta pueden desinstalar la versión 3.1 y anteriores.

Dado que esta herramienta tiene un comportamiento destructivo, es altamente recomendable que realice un simulacro antes de ejecutar el comando remove. El simulacro le mostrará qué SDK y entornos de ejecución de .NET se quitarán cuando use el comando remove. Consulte ¿Puedo quitar una versión? para saber qué SDK y entornos en tiempo de ejecución se pueden quitar de forma segura.

Precaución

Tenga en cuenta las siguientes advertencias:

  • Esta herramienta puede desinstalar las versiones del SDK de .NET que necesitan los archivos global.json de la máquina. Puede volver a instalar los SDK de .NET en la página de descarga de .NET.
  • Esta herramienta puede desinstalar las versiones del entorno de ejecución de .NET que necesitan las aplicaciones que dependen del marco de trabajo de la máquina. Puede volver a instalar los entornos de ejecución de .NET en la página de descarga de .NET.
  • Esta herramienta puede desinstalar las versiones del SDK y del entorno de ejecución de .NET de las que depende Visual Studio. Si interrumpe la instalación de Visual Studio, ejecute "Reparar" en el instalador de Visual Studio para volver a un estado de funcionamiento.

De forma predeterminada, todos los comandos mantienen los SDK y los entornos de ejecución de .NET que pueden necesitar Visual Studio u otros SDK. Estos SDK y entornos en tiempos de ejecución se pueden desinstalar si se enumeran explícitamente como argumentos o mediante la opción --force.

La herramienta requiere elevación para desinstalar los SDK y los entornos de ejecución de .NET. Ejecute la herramienta en un símbolo del sistema de administrador en Windows y con sudo en macOS. Los comandos dry-run y whatif no requieren elevación.

Para obtener más información, vea el comando remove que figura más adelante en este artículo.

Paso 4: Eliminar la carpeta de reserva de NuGet (opcional)

En algunos casos, ya no necesita NuGetFallbackFolder y puede que desee eliminarlo. Para obtener más información, vea Eliminación de NuGetFallbackFolder.

Desinstalación de la herramienta.

  1. Abra Agregar o quitar programas.
  2. Busque Microsoft .NET SDK Uninstall Tool.
  3. Seleccione Desinstalar.

El comando list

Sinopsis

dotnet-core-uninstall list [options]

Opciones

  • --aspnet-runtime

    Enumera todos los entornos de ejecución de ASP.NET que se pueden desinstalar con esta herramienta.

  • --hosting-bundle

    Enumera todos los conjuntos de hospedaje de .NET que se pueden desinstalar con esta herramienta.

  • --runtime

    Enumera todos los entornos de ejecución de .NET que se pueden desinstalar con esta herramienta.

  • --sdk

    Enumera todos los SDK de .NET que se pueden desinstalar con esta herramienta.

  • -v, --verbosity <LEVEL>

    Establece el nivel de detalle. Los valores permitidos son q[uiet], m[inimal], n[ormal], d[etailed] y diag[nostic]. El valor predeterminado es normal.

  • --x64

    Enumera todos los SDK y entornos de ejecución de .NET x64 que se pueden desinstalar con esta herramienta.

  • --x86

    Enumera todos los SDK y entornos de ejecución de .NET x86 que se pueden desinstalar con esta herramienta.

Ejemplos

  • Enumere todos los SDK y entornos de ejecución de .NET que se pueden quitar con esta herramienta:

    dotnet-core-uninstall list
    
  • Enumere todos los SDK y entornos de ejecución de .NET x64:

    dotnet-core-uninstall list --x64
    
  • Enumere todos los SDK de .NET x86:

    dotnet-core-uninstall list --sdk --x86
    

Comandos dry-run y whatif

Sinopsis

dotnet-core-uninstall dry-run [options] [<VERSION>...]

dotnet-core-uninstall whatif [options] [<VERSION>...]

Argumentos

VERSION

La versión especificada que se va a desinstalar. Puede enumerar varias versiones una después de la otra, separadas por espacios. También se admiten los archivos de respuesta.

Sugerencia

Los archivos de respuesta son una alternativa a la colocación de todas las versiones en la línea de comandos. Son archivos de texto, normalmente con una extensión *.rsp , y cada versión aparece en una línea independiente. Para especificar un archivo de respuesta para el argumento VERSION, use el carácter @ seguido inmediatamente del nombre del archivo de respuesta.

Opciones

  • --all

    Quita todos los SDK y entornos de ejecución de .NET.

  • --all-below <VERSION>[ <VERSION>...]

    Quita solo los SDK y los entornos de ejecución de .NET que tienen una versión menor que la versión especificada. La versión especificada permanece instalada.

  • --all-but <VERSIONS>[ <VERSION>...]

    Quita todos los SDK y entornos de ejecución de .NET, excepto las versiones especificadas.

  • --all-but-latest

    Quita los SDK y los entornos de ejecución de .NET, excepto la versión más alta.

  • --all-lower-patches

    Quita los SDK y los entornos de ejecución de .NET reemplazados por revisiones superiores. Esta opción protege el archivo global.json .

  • --all-previews

    Quita los SDK y los entornos de ejecución de .NET marcados como versiones preliminares.

  • --all-previews-but-latest

    Quita los SDK y los entornos de ejecución de .NET marcados como versiones preliminares, excepto la versión preliminar más alta.

  • --aspnet-runtime

    Quita solo los entornos de ejecución de ASP.NET.

  • --hosting-bundle

    Quita solo el runtime de .NET y los conjuntos de hospedaje.

  • --major-minor <MAJOR_MINOR>

    Quita los SDK y los entornos de ejecución de .NET que coinciden con la versión especificada major.minor .

  • --runtime

    Quita solo los entornos de ejecución de .NET.

  • --sdk

    Quita solo los SDK de .NET.

  • -v, --verbosity <LEVEL>

    Establece el nivel de detalle. Los valores permitidos son q[uiet], m[inimal], n[ormal], d[etailed] y diag[nostic]. El valor predeterminado es normal.

  • --x64

    Se debe usar con --sdk, --runtime y --aspnet-runtime para quitar los SDK o los entornos en tiempo de ejecución x64.

  • --x86

    Se debe usar con --sdk, --runtime y --aspnet-runtime para quitar los SDK o los entornos en tiempo de ejecución x86.

  • --force

    Fuerza la eliminación de las versiones que Visual Studio puede usar.

Nota:

  • Se requiere exactamente uno de los valores --sdk, --runtime, --aspnet-runtime y --hosting-bundle.
  • --all, --all-below, --all-but, --all-but-latest, --all-lower-patches, --all-previews, --all-previews-but-latest, --major-minor y [<VERSION>...] son valores exclusivos.
  • Si no se especifica --x64 o --x86, se quitarán tanto x64 como x86.

Ejemplos

Nota:

De forma predeterminada, los SDK y los entornos de ejecución de .NET que Visual Studio u otros SDK podrían requerir no se incluyen en la dotnet-core-uninstall dry-run salida. En los ejemplos siguientes, dependiendo del estado de la máquina, es posible que algunos de los SDK y los entornos de ejecución especificados no se incluyan en la salida. Para incluir todos los SDK y los entornos de ejecución, enumere explícitamente como argumentos o use la --force opción .

  • Ejecución seca de eliminación de todos los entornos de ejecución de .NET que se han reemplazado por revisiones superiores:

    dotnet-core-uninstall dry-run --all-lower-patches --runtime
    
  • Ejecución seca de eliminación de todos los SDK de .NET debajo de la versión 2.2.301:

    dotnet-core-uninstall whatif --all-below 2.2.301 --sdk
    

El comando remove

Sinopsis

dotnet-core-uninstall remove [options] [<VERSION>...]

Argumentos

VERSION

La versión especificada que se va a desinstalar. Puede enumerar varias versiones una después de la otra, separadas por espacios. También se admiten los archivos de respuesta.

Sugerencia

Los archivos de respuesta son una alternativa a la colocación de todas las versiones en la línea de comandos. Son archivos de texto, normalmente con una extensión *.rsp , y cada versión aparece en una línea independiente. Para especificar un archivo de respuesta para el argumento VERSION, use el carácter @ seguido inmediatamente del nombre del archivo de respuesta.

Opciones

  • --all

    Quita todos los SDK y entornos de ejecución de .NET.

  • --all-below <VERSION>[ <VERSION>...]

    Quita solo los SDK y los entornos de ejecución de .NET que tienen una versión menor que la versión especificada. La versión especificada permanece instalada.

  • --all-but <VERSIONS>[ <VERSION>...]

    Quita todos los SDK y entornos de ejecución de .NET, excepto las versiones especificadas.

  • --all-but-latest

    Quita los SDK y los entornos de ejecución de .NET, excepto la versión más alta.

  • --all-lower-patches

    Quita los SDK y los entornos de ejecución de .NET reemplazados por revisiones superiores. Esta opción protege el archivo global.json .

  • --all-previews

    Quita los SDK y los entornos de ejecución de .NET marcados como versiones preliminares.

  • --all-previews-but-latest

    Quita los SDK y los entornos de ejecución de .NET marcados como versiones preliminares, excepto la versión preliminar más alta.

  • --aspnet-runtime

    Quita solo los entornos de ejecución de ASP.NET.

  • --hosting-bundle

    Quita solo los conjuntos de hospedaje de .NET.

  • --major-minor <MAJOR_MINOR>

    Quita los SDK y los entornos de ejecución de .NET que coinciden con la versión especificada major.minor .

  • --runtime

    Quita solo los entornos de ejecución de .NET.

  • --sdk

    Quita solo los SDK de .NET.

  • -v, --verbosity <LEVEL>

    Establece el nivel de detalle. Los valores permitidos son q[uiet], m[inimal], n[ormal], d[etailed] y diag[nostic]. El valor predeterminado es normal.

  • --x64

    Se debe usar con --sdk, --runtime y --aspnet-runtime para quitar los SDK o los entornos en tiempo de ejecución x64.

  • --x86

    Se debe usar con --sdk, --runtime y --aspnet-runtime para quitar los SDK o los entornos en tiempo de ejecución x86.

  • -y, --yes

    Ejecuta el comando sin requerir una confirmación sí o no.

  • --force

    Fuerza la eliminación de las versiones que Visual Studio puede usar.

Nota:

  • Se requiere exactamente uno de los valores --sdk, --runtime, --aspnet-runtime y --hosting-bundle.
  • --all, --all-below, --all-but, --all-but-latest, --all-lower-patches, --all-previews, --all-previews-but-latest, --major-minor y [<VERSION>...] son valores exclusivos.
  • Si no se especifica --x64 o --x86, se quitarán tanto x64 como x86.

Ejemplos

Nota:

De forma predeterminada, se conservan los SDK y los entornos de ejecución de .NET que Visual Studio u otros SDK podrían requerir. En los ejemplos siguientes, dependiendo del estado de la máquina, algunos de los SDK y los entornos de ejecución especificados pueden permanecer. Para quitar todos los SDK y los entornos de ejecución, enumere explícitamente como argumentos o use la --force opción .

  • Quite todos los entornos de ejecución de .NET, excepto la versión 3.0.0-preview6-27804-01 sin necesidad de confirmación de sí o no:

    dotnet-core-uninstall remove --all-but 3.0.0-preview6-27804-01 --runtime --yes
    
  • Quite todos los SDK de .NET Core 1.1 sin necesidad de confirmación sí o sin confirmación:

    dotnet-core-uninstall remove --sdk --major-minor 1.1 -y
    
  • Quitar el SDK de .NET Core 1.1.11 sin salida de consola:

    dotnet-core-uninstall remove 1.1.11 --sdk --yes --verbosity q
    
  • Quite todos los SDK de .NET que puede quitar de forma segura esta herramienta:

    dotnet-core-uninstall remove --all --sdk
    
  • Quite todos los SDK de .NET que puede quitar esta herramienta, incluidos los SDK que Visual Studio podría requerir (no recomendado):

    dotnet-core-uninstall remove --all --sdk --force
    
  • Quite todos los SDK de .NET que se especifican en el archivo de respuesta versions.rsp :

    dotnet-core-uninstall remove --sdk @versions.rsp
    

    El contenido del archivo versions.rsp es el siguiente:

    2.2.300
    2.1.700