Compartir a través de


Get-Item

Obtiene el elemento en la ubicación especificada.

Syntax

Get-Item
   [-Path] <String[]>
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Force]
   [-Credential <PSCredential>]
   [-Stream <String[]>]
   [<CommonParameters>]
Get-Item
   -LiteralPath <String[]>
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Force]
   [-Credential <PSCredential>]
   [-Stream <String[]>]
   [<CommonParameters>]

Description

El Get-Item cmdlet obtiene el elemento en la ubicación especificada. No obtiene el contenido del elemento en la ubicación a menos que use un carácter comodín (*) para solicitar todo el contenido del elemento.

Los proveedores de PowerShell usan este cmdlet para navegar por diferentes tipos de almacenes de datos.

Ejemplos

Ejemplo 1: Obtener el directorio actual

En este ejemplo se obtiene el directorio actual. El punto ('.') representa el elemento en la ubicación actual (no su contenido).

Get-Item .

Directory: C:\

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         7/26/2006  10:01 AM            ps-test

Ejemplo 2: Obtener todos los elementos del directorio actual

En este ejemplo se obtienen todos los elementos del directorio actual. El carácter comodín (*) representa todo el contenido del elemento actual.

Get-Item *

Directory: C:\ps-test

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         7/26/2006   9:29 AM            Logs
d----         7/26/2006   9:26 AM            Recs
-a---         7/26/2006   9:28 AM         80 date.csv
-a---         7/26/2006  10:01 AM         30 filenoext
-a---         7/26/2006   9:30 AM      11472 process.doc
-a---         7/14/2006  10:47 AM         30 test.txt

Ejemplo 3: Obtener el directorio actual de una unidad

En este ejemplo se obtiene el directorio actual de la C: unidad. El objeto que se recupera representa sólo el directorio, no su contenido.

Get-Item C:

Ejemplo 4: Obtener elementos en la unidad especificada

En este ejemplo se obtienen los elementos de la C: unidad. El carácter comodín (*) representa todos los elementos del contenedor, no solo el contenedor.

Get-Item C:\*

En PowerShell, use un único asterisco (*) para obtener contenido, en lugar de la tradicional *.*. El formato se interpreta literalmente, por lo que *.* no recuperaría directorios ni nombres de archivo sin un punto.

Ejemplo 5: Obtener una propiedad en el directorio especificado

En este ejemplo se obtiene la propiedad LastAccessTime del C:\Windows directorio . LastAccessTime es solo una propiedad de los directorios del sistema de archivos. Para ver todas las propiedades de un directorio, escriba (Get-Item <directory-name>) | Get-Member.

(Get-Item C:\Windows).LastAccessTime

Ejemplo 6: Mostrar el contenido de una clave del Registro

En este ejemplo se muestra el contenido de la clave del Registro Microsoft.PowerShell . Puede usar este cmdlet con el proveedor del Registro de PowerShell para obtener las claves del Registro y las subclaves, pero debe usar el Get-ItemProperty cmdlet para obtener los valores y los datos del Registro.

Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\

Ejemplo 7: Obtener elementos de un directorio que tienen una exclusión

En este ejemplo se obtienen elementos del directorio de Windows con nombres que incluyen un punto (.), pero no comienzan por w*. Este ejemplo solo funciona cuando la ruta de acceso incluye un carácter comodín (*) para especificar el contenido del elemento.

Get-Item C:\Windows\*.* -Exclude "w*"

Ejemplo 8: Obtención de información de vínculo físico

En PowerShell 6.2, se agregó una vista alternativa para obtener información de vínculo físico. Para obtener la información de vínculo físico, canalice la salida a Format-Table -View childrenWithHardlink

Get-Item C:\Windows\System32\ntoskrnl.exe | Format-Table -view childrenWithHardLink

Directory: C:\Windows\System32

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
la---           5/12/2021  7:40 AM       10848576 ntoskrnl.exe

La Mode propiedad identifica el vínculo de disco duro de en .lla---

Ejemplo 9: Salida para sistemas operativos que no son Windows

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

PS> Get-Item /Users

Directory: /

UnixMode    User  Group   LastWriteTime      Size  Name
--------    ----  -----   -------------      ----  ----
drwxr-xr-x  root  admin   12/20/2019 11:46   192   Users

Las nuevas propiedades que ahora forman parte de la salida son:

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

Nota

Esta característica se movió de la rama experimental a la estándar en PowerShell 7.1.

Parámetros

-Credential

Nota

Este parámetro no es compatible con ningún proveedor instalado con PowerShell. Para suplantar a otro usuario o elevar las credenciales al ejecutar este cmdlet, use Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

Especifica, como una matriz de cadenas, un elemento o elementos que este cmdlet excluye en la operación. El valor de este parámetro califica el parámetro Path. Escriba un elemento o patrón de ruta de acceso, como *.txt. Se permite el uso de caracteres comodín. El parámetro Exclude 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 C:\Windows directorio.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Especifica un filtro para calificar el parámetro Path . El proveedor 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 ? .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Indica que este cmdlet obtiene elementos a los que no se puede acceder de otro modo, como elementos ocultos. La implementación varía en función del proveedor. Para obtener más información, consulte about_Providers. Incluso con el parámetro Force , el cmdlet no puede invalidar las restricciones de seguridad.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Include

Especifica, como una matriz de cadenas, un elemento o elementos que este cmdlet incluye en la operación. El valor de este parámetro califica el parámetro Path. Escriba un elemento o patrón de ruta de acceso, 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 C:\Windows directorio.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

Especifica una ruta de acceso a una o varias ubicaciones. El valor de LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso contiene caracteres de escape, escríbalos entre comillas simples. Las comillas simples indican a PowerShell que no interprete caracteres como secuencias de escape.

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

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

Especifica la ruta de acceso a un elemento. Este cmdlet obtiene el elemento en la ubicación especificada. Se permite el uso de caracteres comodín. Este parámetro es obligatorio, pero el nombre del parámetro Path es opcional.

Use un punto (.) para especificar la ubicación actual. Use el carácter comodín (*) para especificar todos los elementos de la ubicación actual.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Stream

Nota

Este parámetro solo está disponible en Windows.

Obtiene la secuencia de archivo NTFS alternativa especificada del archivo. Escriba el nombre de la secuencia. Se admite caracteres comodín. Para obtener todas las secuencias, use un asterisco (*). Este parámetro no es válido en carpetas.

Stream es un parámetro dinámico que el proveedor FileSystem agrega al Get-Item cmdlet . Este parámetro solo funciona en las unidades del sistema de archivos.

Type:String[]
Position:Named
Default value:No alternate file streams
Required:False
Accept pipeline input:False
Accept wildcard characters:True

Entradas

String

Puede canalizar una cadena que contiene una ruta de acceso a este cmdlet.

Salidas

Object

Este cmdlet devuelve los objetos que obtiene. El tipo es determinado por el tipo de objetos en la ruta de acceso.

Notas

Este cmdlet no tiene un parámetro Recurse , ya que solo obtiene un elemento, no su contenido. Para obtener el contenido de un elemento de forma recursiva, use Get-ChildItem.

Para navegar por el Registro, use este cmdlet para obtener las claves del Registro y para Get-ItemProperty obtener los valores y los datos del Registro. Los valores del Registro se consideran propiedades de la clave del Registro.

Este cmdlet 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.