Este contenido ya no se actualizará periódicamente. Consulte la página del ciclo de vida de productos de Microsoft para obtener información sobre cómo se admite este producto, servicio, tecnología o API.
TEMA
about_Properties
DESCRIPCIÓN BREVE
Describe cómo utilizar las propiedades de los objetos de Windows
PowerShell.
DESCRIPCIÓN DETALLADA
Windows PowerShell usa colecciones estructuradas de datos,
denominadas objetos, para representar los elementos de los
almacenes de datos o el estado del equipo.
Normalmente, se trabaja con objetos que forman parte de Microsoft
.NET Framework, pero también se pueden crear objetos
personalizados en Windows PowerShell.
La asociación entre un elemento y su objeto es muy estrecha.
Cuando se modifica un objeto, se modifica el elemento que
representa. Por ejemplo, cuando se obtiene un archivo en Windows
PowerShell, no se obtiene el archivo propiamente dicho.
En su lugar, se obtiene un objeto FileInfo que representa el
archivo. Cuando se modifica el objeto FileInfo, también se
modifica el archivo.
La mayoría de los objetos tienen propiedades. Las propiedades son
los datos asociados a un objeto. Estos datos describen el objeto.
Por ejemplo, un objeto FileInfo tiene una propiedad denominada
Length, que describe el tamaño del archivo que el objeto representa.
Propiedades de objetos
Para ver las propiedades de un objeto, use el cmdlet Get-Member.
Por ejemplo, si desea obtener las propiedades de un objeto
FileInfo, utilice el cmdlet Get-ChildItem para obtener el objeto
FileInfo que representa un archivo. A continuación, utilice un
operador de canalización (|) para enviar el objeto FileInfo a
Get-Member. El comando siguiente obtiene el archivo
PowerShell.exe y lo envía a Get-Member. La variable automática
$Pshome contiene la ruta de acceso al directorio de instalación
de Windows PowerShell.
get-childitem $pshome\powershell.exe | get-member
El resultado del comando muestra los miembros del objeto FileInfo.
Los miembros incluyen propiedades y métodos. Cuando trabaja en Windows
PowerShell, tiene acceso a todos los miembros de los objetos.
Para obtener únicamente las propiedades de un objeto y no los métodos,
utilice el parámetro MemberType del cmdlet Get-Member con el valor "property",
tal y como se indica en el ejemplo siguiente.
get-childitem $pshome\powershell.exe | get-member -membertype property
TypeName: System.IO.FileInfo
Name MemberType Definition
---- ---------- ----------
Attributes Property System.IO.FileAttributes Attributes {get;set;}
CreationTime Property System.DateTime CreationTime {get;set;}
CreationTimeUtc Property System.DateTime CreationTimeUtc {get;set;}
Directory Property System.IO.DirectoryInfo Directory {get;}
DirectoryName Property System.String DirectoryName {get;}
Exists Property System.Boolean Exists {get;}
Extension Property System.String Extension {get;}
FullName Property System.String FullName {get;}
IsReadOnly Property System.Boolean IsReadOnly {get;set;}
LastAccessTime Property System.DateTime LastAccessTime {get;set;}
LastAccessTimeUtc Property System.DateTime LastAccessTimeUtc {get;set;}
LastWriteTime Property System.DateTime LastWriteTime {get;set;}
LastWriteTimeUtc Property System.DateTime LastWriteTimeUtc{get;set;}
Length Property System.Int64 Length {get;}
Name Property System.String Name {get;}
Después de obtener las propiedades, puede utilizarlas en los
comandos de Windows PowerShell.
Valores de propiedad
Si bien todos los objetos de un tipo específico tienen las
mismas propiedades, los valores de esas propiedades describen el
objeto concreto. Por ejemplo, todos los objetos FileInfo tienen
una propiedad CreationTime, pero el valor de esa propiedad
difiere para cada archivo.
La manera más común de obtener los valores de las propiedades de
un objeto es el uso de un punto. Escriba una referencia al
objeto, como una variable que contenga el objeto, o un comando
que lo obtenga. A continuación, escriba un punto (.) seguido del
nombre de la propiedad.
Por ejemplo, el comando siguiente muestra el valor de la
propiedad CreationTime del archivo PowerShell.exe. El comando
Get-ChildItem devuelve un objeto FileInfo que representa el
archivo PowerShell.exe. El comando se encuentra entre paréntesis
para garantizar que se ejecute antes de que se obtenga acceso a
las propiedades. El comando Get-ChildItem va seguido de un punto
y el nombre de la propiedad CreationTime, tal y como se indica a
continuación:
C:\PS> (Get-ChildItem $pshome\powershell.exe).creationtime
Martes, 18 de marzo de 2008 12:07:52
Asimismo, puede guardar un objeto en una variable y, a
continuación, obtener sus propiedades usando un punto, tal y
como se indica en el ejemplo siguiente:
C:\PS> $a = Get-ChildItem $pshome\powershell.exe
C:\PS> $a.CreationTime
Martes, 18 de marzo de 2008 12:07:52
También puede utilizar los cmdlets Select-Object y Format-List
para mostrar los valores de las propiedades de un objeto.
Select-Object y Format-List tienen un parámetro Property. Puede
usar el parámetro Property para especificar una o varias
propiedades y sus valores. O bien, puede usar el carácter
comodín (*) para representar todas las propiedades.
Por ejemplo, el comando siguiente muestra los valores de todas
las propiedades del archivo PowerShell.exe.
C:\PS> Get-ChildItem $pshome\powershell.exe | Format-List -property *
PSPath : Microsoft.PowerShell.Core\FileSystem::C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe
PSParentPath : Microsoft.PowerShell.Core\FileSystem::C:\Windows\system32\WindowsPowerShell\v1.0
PSChildName : powershell.exe
PSDrive : C
PSProvider : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
VersionInfo : File: C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe
InternalName: POWERSHELL
OriginalFilename: PowerShell.EXE.MUI
File Version: 6.1.6570.1 (fbl_srv_powershell(nigels).070711-0102)
FileDescription: PowerShell.EXE
Product: Sistema operativo Microsoft(r) Windows(r)
ProductVersion: 6.1.6570.1
Debug: False
Patched: False
PreRelease: False
PrivateBuild: True
SpecialBuild: False
Language: Inglés (Estados Unidos)
BaseName : powershell
Mode : -a---
Name : powershell.exe
Length : 160256
DirectoryName : C:\Windows\system32\WindowsPowerShell\v1.0
Directory : C:\Windows\system32\WindowsPowerShell\v1.0
IsReadOnly : False
Exists : True
FullName : C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe
Extension : .exe
CreationTime : 18/3/2008 12:07:52
CreationTimeUtc : 18/3/2008 7:07:52
LastAccessTime : 19/3/2008 8:13:58
LastAccessTimeUtc : 19/3/2008 15:13:58
LastWriteTime : 18/3/2008 12:07:52
LastWriteTimeUtc : 18/3/2008 7:07:52
Attributes : Archivo
VEA TAMBIÉN
about_Objects
Get-Member
Select-Object
Format-List