Compartir a través de


Get-ChildItem

Obtiene los elementos y elementos secundarios de una o varias ubicaciones especificadas.

Sintaxis

Get-ChildItem
   [[-Path] <string[]>]
   [[-Filter] <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [<CommonParameters>]
Get-ChildItem
   [[-Filter] <string>]
   -LiteralPath <string[]>
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [<CommonParameters>]
Get-ChildItem
   [[-Path] <string[]>]
   [[-Filter] <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [-CodeSigningCert]
   [-DocumentEncryptionCert]
   [-SSLServerAuthentication]
   [-DnsName <string>]
   [-Eku <string[]>]
   [-ExpiringInDays <int>]
   [<CommonParameters>]
Get-ChildItem
   [[-Filter] <string>]
   -LiteralPath <string[]>
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [-CodeSigningCert]
   [-DocumentEncryptionCert]
   [-SSLServerAuthentication]
   [-DnsName <string>]
   [-Eku <string[]>]
   [-ExpiringInDays <int>]
   [<CommonParameters>]
Get-ChildItem
   [[-Path] <string[]>]
   [[-Filter] <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [-Attributes <FlagsExpression[FileAttributes]>]
   [-FollowSymlink]
   [-Directory]
   [-File]
   [-Hidden]
   [-ReadOnly]
   [-System]
   [<CommonParameters>]
Get-ChildItem
   [[-Filter] <string>]
   -LiteralPath <string[]>
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Recurse]
   [-Depth <uint>]
   [-Force]
   [-Name]
   [-Attributes <FlagsExpression[FileAttributes]>]
   [-FollowSymlink]
   [-Directory]
   [-File]
   [-Hidden]
   [-ReadOnly]
   [-System]
   [<CommonParameters>]

Description

El cmdlet Get-ChildItem obtiene los elementos de una o varias ubicaciones especificadas. Si el elemento es un contenedor, obtiene los elementos que se encuentran dentro del contenedor, denominados elementos secundarios. Puede usar el parámetro Recurse para obtener elementos de todos los contenedores secundarios y parámetro Depth para limitar el número de niveles que se recorren.

Get-ChildItem no muestra directorios vacíos. Cuando un comando Get-ChildItem incluye los parámetros Profundidad o Recurse, los directorios vacíos no se incluyen en la salida.

Las ubicaciones son expuestas a Get-ChildItem por los proveedores de PowerShell. Una ubicación puede ser un directorio del sistema de archivos, un subárbol del Registro o un almacén de certificados. Algunos parámetros solo están disponibles para un proveedor específico. Para obtener más información, consulte about_Providers.

Ejemplos

Ejemplo 1: Obtener elementos secundarios de un directorio del sistema de archivos

En este ejemplo se obtienen los elementos secundarios de un directorio del sistema de archivos. Se muestran los nombres de archivos y subdirectorios. En el caso de ubicaciones vacías, el comando no devuelve ningún resultado y vuelve al símbolo del sistema de PowerShell.

El cmdlet Get-ChildItem usa el parámetro Path para especificar el directorio C:\Test. Get-ChildItem muestra los archivos y directorios en la consola de PowerShell.

Get-ChildItem -Path C:\Test

Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     08:29                Logs
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a----         2/1/2019     08:43            183 CreateTestFile.ps1
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

De forma predeterminada, Get-ChildItem enumera el modo (Atributos), la fecha/hora de última escritura , el tamaño del archivo (Longitud) y el Nombre del elemento. Las letras en la propiedad de Modo se pueden interpretar de la siguiente manera:

  • l (vínculo)
  • d (directorio)
  • a (archivo)
  • r (solo lectura)
  • h (oculto)
  • s (sistema)

Para obtener más información sobre las marcas de modo, consulte about_Filesystem_Provider.

Ejemplo 2: Obtener nombres de elementos secundarios en un directorio

En este ejemplo solo se enumeran los nombres de los elementos de un directorio.

El cmdlet Get-ChildItem usa el parámetro Path para especificar el directorio C:\Test. El parámetro Name devuelve solo los nombres de archivo o directorio de la ruta de acceso especificada. Los nombres devueltos son relativos al valor del parámetro Path.

Get-ChildItem -Path C:\Test -Name

Logs
anotherfile.txt
Command.txt
CreateTestFile.ps1
ReadOnlyFile.txt

Ejemplo 3: Obtener elementos secundarios en el directorio y subdirectorios actuales

En este ejemplo se muestran .txt archivos que se encuentran en el directorio actual y sus subdirectorios.

Get-ChildItem -Path .\*.txt -Recurse -Force

Directory: C:\Test\Logs\Adirectory

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile4.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile4.txt

    Directory: C:\Test\Logs\Backup

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 ATextFile.txt
-a----        2/12/2019     15:50             20 LogFile3.txt

    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt

    Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

El cmdlet Get-ChildItem usa el parámetro Path para especificar C:\Test\*.txt. Path utiliza el asterisco de comodín (*) para especificar todos los archivos con la extensión de archivo .txt. El parámetro Recurse busca en el directorio: Path y sus subdirectorios, tal como se muestra en los encabezados Directory:. El parámetro Force muestra archivos ocultos, como hiddenfile.txt que tienen un modo de h.

Ejemplo 4: Obtener elementos secundarios mediante el parámetro Include

En este ejemplo, Get-ChildItem usa el parámetro Include para buscar elementos específicos del directorio especificado por el parámetro Path.

# When using the -Include parameter, if you don't include an asterisk in the path
# the command returns no output.
Get-ChildItem -Path C:\Test\ -Include *.txt



Get-ChildItem -Path C:\Test\* -Include *.txt

Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

El cmdlet Get-ChildItem usa el parámetro Path para especificar el directorio C:\Test. El parámetro Path incluye un carácter comodín de asterisco final (*) para especificar el contenido del directorio. El parámetro Include usa un comodín asterisco (*) para especificar todos los archivos con la extensión de nombre de archivo .txt.

Cuando se usa el parámetro Include, el parámetro Path necesita un asterisco como carácter comodín final (*) para especificar el contenido del directorio. Por ejemplo, -Path C:\Test\*.

  • Si el parámetro Recurse se agrega al comando , el asterisco final (*) del parámetro Path es opcional. El parámetro Recurse obtiene elementos del directorio Path y sus subdirectorios. Por ejemplo, -Path C:\Test\ -Recurse -Include *.txt
  • Si no se incluye un asterisco final (*) en el parámetro Path, el comando no devuelve ningún resultado y vuelve al símbolo del sistema de PowerShell. Por ejemplo, -Path C:\Test\.

Ejemplo 5: Obtener elementos secundarios mediante el parámetro Exclude

La salida del ejemplo muestra el contenido del directorio C:\Test\Logs. La salida es una referencia para los demás comandos que usan los parámetros Exclude y Recurse.

Get-ChildItem -Path C:\Test\Logs

Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Adirectory
d-----        2/15/2019     08:28                AnEmptyDirectory
d-----        2/15/2019     13:21                Backup
-a----        2/12/2019     16:16             20 Afile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log

Get-ChildItem -Path C:\Test\Logs\* -Exclude A*

Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Backup
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log

El cmdlet Get-ChildItem usa el parámetro Path para especificar el directorio C:\Test\Logs. El parámetro Exclude usa el comodín asterisco (*) para especificar los archivos o directorios que comienzan por A o a se excluyen de la salida.

Cuando se utiliza el parámetro Exclude, un asterisco final (*) en el parámetro Path es opcional. Por ejemplo, -Path C:\Test\Logs o -Path C:\Test\Logs\*.

  • Si no se incluye un asterisco al final (*) en el parámetro de ruta , se muestran los contenidos del parámetro de ruta . Las excepciones son nombres de archivos o subdirectorios que coinciden con el valor del parámetro Exclude.
  • Si se incluye un asterisco al final (*) en el parámetro de ruta , el comando se adentra en los subdirectorios del parámetro de ruta . Las excepciones son nombres de archivos o subdirectorios que coinciden con el valor del parámetro Exclude.
  • Si se agrega el parámetro Recurse al comando, la salida de recursividad será la misma tanto si el parámetro Path incluye un asterisco al final (*) como si no.

Ejemplo 6: Obtener las claves de registro de un Hive del registro

En este ejemplo, se obtienen todas las claves del registro de HKEY_LOCAL_MACHINE\HARDWARE.

Get-ChildItem usa el parámetro Path para especificar la clave del registro HKLM:\HARDWARE. La ruta de acceso de Hive y el nivel más alto de las claves de registro se muestran en la consola de PowerShell.

Para obtener más información, consulte about_Registry_Provider.

Get-ChildItem -Path HKLM:\HARDWARE

Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name             Property
----             --------
ACPI
DESCRIPTION
DEVICEMAP
RESOURCEMAP
UEFI

Get-ChildItem -Path HKLM:\HARDWARE -Exclude D*

Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name                           Property
----                           --------
ACPI
RESOURCEMAP

El primer comando muestra el contenido de la clave del Registro HKLM:\HARDWARE. El parámetro Exclude indica Get-ChildItem que no devuelva ninguna subclave que empiece por D*. Actualmente, el parámetro Exclude solo funciona en subclaves, no en propiedades de elemento.

Ejemplo 7: Obtener todos los certificados con autoridad de firma de código

En este ejemplo, se obtiene cada certificado de la unidad Cert: de PowerShell que tiene autoridad para firmar código.

El cmdlet Get-ChildItem usa el parámetro Path para especificar el proveedor de certificados con la unidad de Cert:. El parámetro Recurse busca en el directorio especificado por Path y sus subdirectorios. El parámetro CodeSigningCert solo obtiene certificados que tienen autoridad de firma de código.

Get-ChildItem -Path Cert:\* -Recurse -CodeSigningCert

Para obtener más información sobre el proveedor de certificados y la unidad de Cert:, consulte about_Certificate_Provider.

Ejemplo 8: Obtener elementos mediante el parámetro Depth

En este ejemplo se muestran los elementos de un directorio y sus subdirectorios. El parámetro Depth determina el número de niveles de subdirectorio que se van a incluir en la recursividad. Los directorios vacíos se excluyen de la salida.

Get-ChildItem -Path C:\Parent -Depth 2

Directory: C:\Parent

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level1
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level2
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1\SubDir_Level2

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:22                SubDir_Level3
-a----        2/13/2019     08:55             26 file.txt

El cmdlet Get-ChildItem usa el parámetro Path para especificar C:\Parent. El parámetro Depth especifica dos niveles de recursividad. Get-ChildItem muestra el contenido del directorio especificado por el parámetro Path y los dos niveles de subdirectorios.

Ejemplo 9: Obtener información sobre vínculos duros

En PowerShell 6.2, se agregó una vista alternativa para obtener información de vínculos físicos.

Get-ChildItem -Path C:\PathContainingHardLink | Format-Table -View childrenWithHardLink

Ejemplo 10: salida para sistemas operativos que no son Windows

En PowerShell 7.1 en sistemas Unix, el Get-ChildItem proporciona una salida similar a Unix:

PS> Get-ChildItem /etc/r*

Directory: /etc

UnixMode   User Group    LastWriteTime Size Name
--------   ---- -----    ------------- ---- ----
drwxr-xr-x root wheel  9/30/2019 19:19  128 racoon
-rw-r--r-- root wheel  9/26/2019 18:20 1560 rc.common
-rw-r--r-- root wheel  7/31/2017 17:30 1560 rc.common~previous
-rw-r--r-- root wheel  9/27/2019 20:34 5264 rc.netboot
lrwxr-xr-x root wheel  11/8/2019 15:35   22 resolv.conf -> /private/var/run/resolv.conf
-rw-r--r-- root wheel 10/23/2019 17:41    0 rmtab
-rw-r--r-- root wheel 10/23/2019 17:41 1735 rpc
-rw-r--r-- root wheel  7/25/2017 18:37 1735 rpc~previous
-rw-r--r-- root wheel 10/23/2019 18:42  891 rtadvd.conf
-rw-r--r-- root wheel  8/24/2017 21:54  891 rtadvd.conf~previous

Las nuevas propiedades que forman parte de la salida son:

  • UnixMode son los permisos de archivo tal como se representan en un sistema Unix.
  • usuario es el propietario del archivo
  • grupo es el propietario del grupo
  • Tamaño es el tamaño del archivo o directorio tal como se representa en un sistema Unix.

Nota

Esta característica se ha movido de experimental a estándar en PowerShell 7.1.

Ejemplo 11: Obtener el destino del vínculo para un punto de unión

El comando dir del Shell de comandos de Windows muestra la ubicación de destino de un punto de unión del sistema de archivos. En PowerShell, esta información está disponible en la propiedad LinkTarget del objeto del sistema de archivos devuelto por Get-ChildItem y se muestra en la salida predeterminada.

PS D:\> New-Item -ItemType Junction -Name tmp -Target $env:TEMP
PS D:\> Get-ChildItem | Select-Object name, LinkTarget

Name     LinkTarget
----     ----------
tmp      C:\Users\user1\AppData\Local\Temp

PS D:\> Get-ChildItem

    Directory: D:\

Mode          LastWriteTime    Length Name
----          -------------    ------ ----
l----   12/16/2021  9:29 AM           tmp -> C:\Users\user1\AppData\Local\Temp

Ejemplo 12: Obtener el destino del vínculo para un punto de reanálisis de AppX

En este ejemplo se intenta obtener la información de destino de un punto de reanálisis de AppX. Las aplicaciones de Microsoft Store crean puntos de reanálisis de AppX en el directorio AppData del usuario.

Get-ChildItem ~\AppData\Local\Microsoft\WindowsApps\MicrosoftEdge.exe |
    Select-Object Mode, LinkTarget, LinkType, Name

Mode  LinkTarget LinkType Name
----  ---------- -------- ----
la---                     MicrosoftEdge.exe

En este momento, Windows no tiene una forma de obtener la información de destino de un punto de reanálisis de AppX. Las propiedades LinkTarget y LinkType del objeto sistema de archivos están vacías.

Parámetros

-Attributes

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Obtiene archivos y carpetas con los atributos especificados. Este parámetro admite todos los atributos y permite especificar combinaciones complejas de atributos.

Por ejemplo, para obtener archivos que no son del sistema (no directorios) cifrados o comprimidos, escriba:

Get-ChildItem -Attributes !Directory+!System+Encrypted, !Directory+!System+Compressed

Para buscar archivos y carpetas con atributos usados habitualmente, use el parámetro Atributos. O bien, los parámetros Directory, File, Hidden, ReadOnlyy System.

El parámetro Attributes admite las siguientes propiedades:

  • Archive
  • Compressed
  • Device
  • Directory
  • Encriptado
  • Hidden
  • IntegrityStream
  • Normal
  • NoScrubData
  • NotContentIndexed
  • Offline
  • ReadOnly
  • ReparsePoint
  • SparseFile
  • System
  • Temporary

Para obtener una descripción de estos atributos, consulte la enumeración FileAttributes.

Para combinar atributos, use los operadores siguientes:

  • ! (NOT)
  • + (AND)
  • , (OR)

No utilice espacios entre un operador y su atributo. Se aceptan espacios después de las comas.

Para los atributos comunes, use las abreviaturas siguientes:

  • D (directorio)
  • H (oculto)
  • R (solo lectura)
  • S (sistema)
Tipo:FlagsExpression<T>[FileAttributes]
Valores aceptados:Archive, Compressed, Device, Directory, Encrypted, Hidden, IntegrityStream, Normal, NoScrubData, NotContentIndexed, Offline, ReadOnly, ReparsePoint, SparseFile, System, Temporary
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-CodeSigningCert

Nota

Este parámetro solo está disponible en el proveedor del Certificado .

Para obtener una lista de certificados que tengan Code Signing en su valor de propiedad EnhancedKeyUsageList, utilice el parámetro CodeSigningCert.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Depth

Este parámetro se agregó en PowerShell 5.0 y le permite controlar la profundidad de recursividad. De forma predeterminada, Get-ChildItem muestra el contenido del directorio primario. El parámetro Depth determina el número de niveles de subdirectorio que se incluyen en la recursividad y muestra el contenido.

Por ejemplo, -Depth 2 incluye el directorio del parámetro Path, el primer nivel de subdirectorios y el segundo nivel de subdirectorios. De forma predeterminada, los nombres de directorio y los nombres de archivo se incluyen en la salida.

Nota

En un equipo Windows desde PowerShell o cmd.exe, puede mostrar una vista gráfica de una estructura de directorios con el comando tree.com.

Tipo:UInt32
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Directory

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Para obtener una lista de directorios, use el parámetro Directory o el parámetro Attributes con la propiedad Directory. Puede usar el parámetro Recurse con Directory.

Tipo:SwitchParameter
Alias:ad
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-DnsName

Nota

Este parámetro solo está disponible en el proveedor de certificados.

Especifica un nombre de dominio o patrón de nombre para que coincida con la propiedad DNSNameList de los certificados que obtiene el cmdlet. El valor de este parámetro puede ser Unicode o ASCII. Los valores punycode se convierten en Unicode. Se permiten caracteres comodín (*).

Este parámetro se introdujo en PowerShell 7.1

Tipo:DnsNameRepresentation
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-DocumentEncryptionCert

Nota

Este parámetro solo está disponible en el proveedor de certificados.

Para obtener una lista de certificados que tienen Document Encryption en su propiedad EnhancedKeyUsageList, use el parámetro DocumentEncryptionCert.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Eku

Nota

Este parámetro solo está disponible en el proveedor de certificados.

Especifica un texto o un patrón de texto para que coincida con la propiedad EnhancedKeyUsageList de los certificados que obtiene el cmdlet. Se permiten caracteres comodín (*). La propiedad EnhancedKeyUsageList contiene el nombre descriptivo y los campos OID del EKU.

Este parámetro se introdujo en PowerShell 7.1

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-Exclude

Especifica una matriz de uno o varios patrones de cadena que se van a hacer corresponder a medida que el cmdlet obtiene elementos secundarios. Cualquier elemento coincidente se excluye de la salida. Escriba un elemento o patrón de ruta, como *.txt o A*. Se aceptan caracteres comodín.

Un asterisco final (*) en el parámetro Path es opcional. Por ejemplo, -Path C:\Test\Logs o -Path C:\Test\Logs\*. Si se incluye un asterisco final (*), el comando se repite en los subdirectorios de Path parámetro. Sin el asterisco (*), se muestra el contenido del parámetro Path. Se incluyen más detalles en el ejemplo 5 y en la sección Notas.

Los parámetros Include y Exclude se pueden usar juntos. Sin embargo, las exclusiones se aplican después de las inclusiones, lo que puede afectar a la salida final.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-ExpiringInDays

Nota

Este parámetro solo está disponible en el proveedor de certificado .

Especifica que el cmdlet solo debe devolver certificados que expiran en o antes del número de días especificado. Un valor de cero (0) obtiene certificados que han expirado.

Este parámetro se introdujo en PowerShell 7.1

Tipo:Int32
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-File

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Para obtener una lista de archivos, use el parámetro File. Puede usar el parámetro Recurse con File.

Tipo:SwitchParameter
Alias:af
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Filter

Especifica un filtro para calificar el parámetro Path. El proveedor de FileSystem es el único proveedor de PowerShell instalado que admite filtros. Los filtros son más eficaces que otros parámetros. El proveedor aplica el filtro cuando el cmdlet obtiene los objetos en lugar de que PowerShell filtre los objetos una vez recuperados. La cadena de filtro se pasa a la API de .NET para enumerar los archivos. La API solo admite caracteres comodín * y ?.

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

De forma predeterminada, el cmdlet Get-ChildItem muestra vínculos simbólicos a directorios encontrados durante la recursividad, pero no se repite en ellos. Use el parámetro FollowSymlink para buscar los directorios que tienen como destino esos vínculos simbólicos. El FollowSymlink es un parámetro dinámico y solo se admite en el proveedor de FileSystem.

Este parámetro se introdujo en PowerShell 6.0.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Force

Permite al cmdlet obtener elementos a los que el usuario no puede acceder de otro modo, como archivos ocultos o del sistema. El parámetro Force no invalida las restricciones de seguridad. La implementación varía entre los proveedores. Para obtener más información, consulte about_Providers.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Hidden

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Para obtener solo elementos ocultos, use el parámetro Oculto o el parámetro Atributos con la propiedad Oculto. De forma predeterminada, Get-ChildItem no muestra elementos ocultos. Use el parámetro Force para obtener elementos ocultos.

Tipo:SwitchParameter
Alias:ah, h
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Include

Especifica una matriz de uno o varios patrones de cadena que se van a hacer corresponder a medida que el cmdlet obtiene elementos secundarios. Cualquier elemento coincidente se incluye en la salida. Escriba un elemento o patrón de ruta, como "*.txt". Se permite el uso de caracteres comodín. El parámetro Include solo es efectivo cuando el comando incluye el contenido de un elemento, como C:\Windows\*, donde el carácter comodín especifica el contenido del directorio C:\Windows.

Los parámetros Include y Exclude se pueden usar juntos. Sin embargo, las exclusiones se aplican después de las inclusiones, lo que puede afectar a la salida final.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:True

-LiteralPath

Especifica una ruta de acceso a una o varias ubicaciones. El valor de LiteralPath se utiliza exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Para obtener más información, consulte about_Quoting_Rules.

Tipo:String[]
Alias:PSPath, LP
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Name

Obtiene solo los nombres de los elementos de la ubicación. La salida es una cadena de texto que se puede enviar por la canalización a otros comandos. Los nombres devueltos son relativos al valor del parámetro Path.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Path

Especifica una ruta de acceso a una o varias ubicaciones. Se aceptan comodines. La ubicación predeterminada es el directorio actual (.).

Tipo:String[]
Posición:0
Valor predeterminado:Current directory
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:True

-ReadOnly

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Para obtener únicamente elementos de solo lectura, utilice el parámetro ReadOnly o el parámetro Attributes de la propiedad ReadOnly.

Tipo:SwitchParameter
Alias:ar
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Recurse

Obtiene los elementos que se encuentren en las ubicaciones especificadas y en todos los elementos secundarios de dichas ubicaciones.

Tipo:SwitchParameter
Alias:s, r
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SSLServerAuthentication

Nota

Este parámetro solo está disponible en el proveedor de certificados .

Para obtener una lista de certificados que tienen el valor Server Authentication en su propiedad EnhancedKeyUsageList, use el parámetro SSLServerAuthentication.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-System

Nota

Este parámetro solo está disponible en el proveedor de FileSystem.

Obtiene solo los archivos y directorios del sistema. Para obtener solo archivos y carpetas del sistema, use el parámetro System, el parámetro Attributes, o la propiedad System.

Tipo:SwitchParameter
Alias:as
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede enviar una cadena que contenga una ruta de acceso a este cmdlet.

Salidas

AliasInfo

El cmdlet muestra este tipo cuando se accede a la unidad Alias:.

X509StoreLocation

X509Store

X509Certificate2

El cmdlet genera estos tipos al acceder a la unidad Cert:.

DictionaryEntry

El cmdlet muestra este tipo cuando se accede a la unidad Env:.

DirectoryInfo

FileInfo

El cmdlet genera estos tipos al acceder a las unidades del sistema de archivos.

FunctionInfo

FilterInfo

El cmdlet muestra este tipo cuando se accede a las unidades Function:.

RegistryKey

El cmdlet muestra este tipo cuando se accede a las unidades del registro.

PSVariable

El cmdlet muestra este tipo al acceder a las unidades Variable:.

WSManConfigContainerElement

WSManConfigLeafElement

El cmdlet muestra este tipo cuando se accede a las unidades WSMan:.

String

Cuando se usa el parámetro Name, este cmdlet devuelve los nombres de objeto como cadenas.

Notas

PowerShell incluye los siguientes alias para Get-ChildItem:

  • Todas las plataformas:
    • dir, gci
  • Windows:
    • ls

Get-ChildItem no obtiene elementos ocultos de forma predeterminada. Para obtener elementos ocultos, use el parámetro Force.

El cmdlet Get-ChildItem está diseñado para trabajar con los datos expuestos por cualquier proveedor. Para enumerar los proveedores disponibles en la sesión, escriba Get-PSProvider. Para obtener más información, consulte about_Providers.