# Cómo Listar Aplicaciones Instaladas en Windows Usando PowerShell

- Link: https://binariocero.com/windows/como-listar-aplicaciones-instaladas-en-windows-usando-powershell
- Published: 2025-07-05T09:47:18+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

PowerShell es una herramienta poderosa para la administración de sistemas Windows,
y una de sus muchas capacidades es la de **listar aplicaciones instaladas**. Dependiendo
del tipo de aplicación (clásica, moderna, de usuario o del sistema), existen varios
enfoques para obtener esta información. En este artículo se describen los métodos
más comunes y efectivos.

### 1. Listar Aplicaciones de Escritorio (Win32)

Las aplicaciones tradicionales instaladas en Windows, como las que se ven en “Programas
y características”, están registradas en el Registro de Windows. PowerShell puede
acceder a estas entradas fácilmente.

#### Aplicaciones de 64 bits (sistema):

    ```wp-block-preformatted
    Get-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |    Where-Object { $_.DisplayName } |    Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |    Sort-Object DisplayName
    ```

#### Aplicaciones de 32 bits (en sistemas de 64 bits):

    ```wp-block-preformatted
    Get-ItemProperty -Path "HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" |    Where-Object { $_.DisplayName } |    Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |    Sort-Object DisplayName
    ```

#### Aplicaciones instaladas para el usuario actual:

    ```wp-block-preformatted
    Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |    Where-Object { $_.DisplayName } |    Select-Object DisplayName, DisplayVersion |    Sort-Object DisplayName
    ```

#### Filtrar por una aplicación concreta (por ejemplo, “7-Zip”)

Puedes buscar una aplicación específica usando un filtro por nombre:

    ```wp-block-preformatted
    Get-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |    Where-Object { $_.DisplayName -like "*7-Zip*" } |    Select-Object DisplayName, DisplayVersion, Publisher, InstallLocation
    ```

> Repite este mismo comando adaptando la ruta si buscas en el registro de 32 bits(`
> WOW6432Node`) o en `HKCU` (usuario actual).
> 
> ### 2. Listar Aplicaciones Modernas (Microsoft Store / UWP)
> 

Las aplicaciones modernas instaladas desde la Microsoft Store se gestionan de forma
diferente y no aparecen en el registro. Para listarlas:

    ```wp-block-preformatted
    Get-AppxPackage |    Select-Object Name, PackageFullName, InstallLocation |    Sort-Object Name
    ```

Para filtrar por nombre (por ejemplo, “7-Zip”):

    ```wp-block-preformatted
    Get-AppxPackage | Where-Object { $_.Name -like "*7zip*" }
    ```

### 3. Usar `winget` para Listar Aplicaciones (si está disponible)

Windows 10 y 11 incluyen la utilidad `winget`, que permite gestionar software desde
la línea de comandos. Para listar todas las aplicaciones:

    ```wp-block-preformatted
    winget list
    ```

Este comando devuelve una lista clara y organizada de todas las aplicaciones instaladas
por el usuario o el sistema, con su versión y origen.

### 4. Comprobar si un Programa Está Instalado (Ejemplo: 7-Zip)

#### Verificar si el ejecutable está en el PATH del sistema:

    ```wp-block-preformatted
    $7zip = Get-Command 7z.exe -ErrorAction SilentlyContinueif ($7zip) {    Write-Output "7-Zip está instalado en: $($7zip.Source)"} else {    Write-Output "7-Zip no está en el PATH del sistema."}
    ```

#### Buscar manualmente en rutas comunes:

    ```wp-block-preformatted
    $paths = @(    "C:\Program Files\7-Zip\7z.exe",    "C:\Program Files (x86)\7-Zip\7z.exe")foreach ($path in $paths) {    if (Test-Path $path) {        Write-Output "7-Zip encontrado en: $path"    }}
    ```

### Exportar la Lista a un Archivo

Puedes exportar cualquier lista generada con PowerShell a un archivo CSV para su
análisis posterior:

    ```wp-block-preformatted
    Get-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |    Where-Object { $_.DisplayName } |    Select-Object DisplayName, DisplayVersion, Publisher |    Export-Csv -Path "C:\apps_instaladas.csv" -NoTypeInformation -Encoding UTF8
    ```

### Conclusión

PowerShell ofrece múltiples maneras de consultar las aplicaciones instaladas en 
un sistema Windows. Ya sea que necesites obtener un inventario para administración,
auditoría o scripting automatizado, estos comandos te permitirán acceder a la información
de forma detallada y flexible.
