4. Tipos
No PowerShell, cada valor tem um tipo, e os tipos enquadram-se numa das duas categorias principais: tipos de valor e tipos de referência. Considere o tipo int
, que é típico dos tipos de valor. Um valor de tipo int
é completamente autossuficiente; todos os bits necessários para representar esse valor são armazenados nesse valor, e cada padrão bit nesse valor representa um valor válido para o seu tipo. Agora, considere o tipo int[]
de matriz, que é típico dos tipos de referência. Um chamado valor de um tipo de matriz pode conter uma referência a um objeto que realmente contém os elementos de matriz, ou a referência nula cujo valor é $null
. A distinção importante entre as duas categorias de tipo é melhor demonstrada pelas diferenças na sua semântica durante a atribuição. Por exemplo,
$i = 100 # $i designates an int value 100
$j = $i # $j designates an int value 100, which is a copy
$a = 10,20,30 # $a designates an object[], Length 3, value 10,20,30
$b = $a # $b designates exactly the same array as does $a, not a copy
$a[1] = 50 # element 1 (which has a value type) is changed from 20 to 50
$b[1] # $b refers to the same array as $a, so $b[1] is 50
Como podemos ver, a atribuição de um valor de tipo de referência envolve uma cópia rasa; ou seja, uma cópia da referência ao objeto em vez do seu valor real. Em contraste, uma cópia profunda requer fazer uma cópia do objeto também.
Um tipo numérico é aquele que permite a representação de valores inteiros ou fracionados, e que suporta operações aritméticas nesses valores. O conjunto de tipos numéricos inclui os tipos inteiros (§4.2.3) e número real (§4.2.4), mas não inclui bool (§4.2.1) ou char (§4.2.2). Uma implementação pode fornecer outros tipos numéricos (tais como byte assinado, inteiro não assinado e inteiros de outros tamanhos).
Uma coleção é um grupo de um ou mais itens relacionados, que não precisam ter o mesmo tipo. Exemplos de tipos de coleção são matrizes, pilhas, filas, listas e mesas de hash. Um programa pode enumerar (ou iterar) sobre os elementos de uma coleção, obtendo acesso a cada elemento um de cada vez. As formas comuns de o fazer são com a declaração de foreach (§8.4.4) e o cmdlet ForEach-Object . O tipo de objeto que representa um enumerador é descrito em §4.5.16.
Neste capítulo, há tabelas que listam os membros acessíveis para um determinado tipo. Para métodos, o Tipo é escrito com o seguinte formulário: returnTypeargumentTypeList/. Se a lista de tipos de argumento for demasiado longa para caber nessa coluna, é mostrada na coluna Purpose .
Outros tipos inteiros são SByte
, Int16``UInt16
, e UInt32``UInt64
, todos no sistema de espaço de nome.
Muitas classes de recolha são definidas como parte do System.Collections ou System.Collections.Generic namespaces. A maioria das classes de recolha implementa as interfacesICollection
, IComparer``IEnumerable
e IList``IDictionary``IDictionaryEnumerator
os seus equivalentes genéricos.
4.1 Tipos especiais
4.1.1 O tipo de vazio
Este tipo não pode ser instantâneo. Fornece um meio para descartar explicitamente um valor utilizando o operador do elenco (§7.2.9).
4.1.2 O tipo nulo
O tipo nulo tem um caso, a variável automática $null (§2.3.2.2), também conhecido como o valor nulo. Este valor fornece um meio para expressar "nada" em contextos de referência. As características deste tipo não são especificadas.
4.1.3 O tipo de objeto
Todos os tipos em PowerShell exceto o tipo nulo (§4.1.2) são derivados direta ou indiretamente do objeto tipo, pelo que o objeto é o tipo de base final de todos os tipos não nulos. Uma variável restrita (§5.3) para escrever objeto não é realmente limitada em tudo, pois pode conter um valor de qualquer tipo.
4.2 Tipos de valor
4.2.1 Boolean
O tipo Boolean é bool
. Existem apenas dois valores deste tipo, Falso e Verdadeiro, representados pelas variáveis automáticas $false
e $true
, respectivamente (§2.3.2.2).
Em PowerShell, bool
mapas para System.Boolean
.
4.2.2 Personagem
Um valor de caracteres tem o tipo de char, que é capaz de armazenar qualquer ponto de código Unicode codificado por UTF-16.
O tipo de carvão tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | char | O maior valor possível de tipo carvão |
MinValue | Propriedade estática (apenas para leitura) | char | O menor valor possível de tipo carvão |
IsControl | Método estático | bool/char | Testa se o personagem é um personagem de controlo |
IsDigit | Método estático | bool/char | Testa se o personagem é um dígito decimal |
IsLetter | Método estático | bool/char | Testa se o personagem é uma letra alfabética |
IsLetterOrDigit | Método estático | bool/char | Testa se o personagem é um dígito decimal ou uma letra alfabética |
IsLower | Método estático | bool/char | Testa se o personagem é uma letra alfabética minúscula |
IsPunctuation | Método estático | bool/char | Testa se o personagem é uma marca de pontuação |
Isupper | Método estático | bool/char | Testa se o personagem é uma letra alfabética maiúscula |
É O Espaço Branco | Método estático | bool/char | Testa se o personagem é um personagem do espaço branco. |
ToLower | Método estático | char/string | Converte o personagem em minúsculas |
Toupper | Método estático | char/string | Converte o personagem em maiúscula |
Windows PowerShell: mapas de char para System.Char.
4.2.3 Inteiro
Existem dois tipos inteiros assinados, ambos de utilização de representação de dois complementos para valores negativos:
- Tipo
int
, que usa 32 bits dando-lhe uma gama de -2147483648 a +2147483647, inclusive. - Tipo
long
, que usa 64 bits dando-lhe uma gama de -9223372036854775808 a +9223372036854775807, inclusive.
O Type Int tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | int | O maior valor possível de tipo int |
MinValue | Propriedade estática (apenas para leitura) | int | O menor valor possível de tipo int |
O Tipo Longo tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | long | O maior valor possível do tipo longo |
MinValue | Propriedade estática (apenas para leitura) | long | O menor valor possível do tipo longo |
Há um tipo inteiro não assinado:
- Tipo
byte
, que usa 8 bits dando-lhe uma gama de 0 a 255, inclusive.
O tipo byte
tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | byte | O maior valor possível de byte tipo |
MinValue | Propriedade estática (apenas para leitura) | byte | O menor valor possível de tipo byte |
Em PowerShell, byte
e int
mapear long
para System.Byte
, System.Int32
e System.Int64
, respectivamente.
4.2.4 Número real
4.2.4.1 boia e duplo
Existem dois tipos reais (ou ponto flutuante):
- Tipo
float
utiliza a representação de precisão única do IEEE de 32 bits. - Tipo
double
utiliza a representação de dupla precisão IEEE de 64 bits.
Um terceiro nome do tipo, single
é um sinónimo para o tipo float
; float
é usado ao longo desta especificação.
Embora o tamanho e representação dos tipos float
e double
sejam definidos por esta especificação, uma implementação pode usar uma precisão estendida para resultados intermédios.
O tipo de boia tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | float | O maior valor possível de flutuação tipo |
MinValue | Propriedade estática (apenas para leitura) | float | O menor valor possível de flutuar tipo |
NaN | Propriedade estática (apenas para leitura) | float | O valor constante Não-um-Número |
Infinidade negativa | Propriedade estática (apenas para leitura) | float | O infinito negativo de valor constante |
Evolução positiva | Propriedade estática (apenas para leitura) | float | O infinito positivo de valor constante |
O tipo duplo tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | double | O maior valor possível de tipo duplo |
MinValue | Propriedade estática (apenas para leitura) | double | O menor valor possível de tipo duplo |
NaN | Propriedade estática (apenas para leitura) | double | O valor constante Não-um-Número |
Infinidade negativa | Propriedade estática (apenas para leitura) | double | O infinito negativo de valor constante |
Evolução positiva | Propriedade estática (apenas para leitura) | double | O infinito positivo de valor constante |
Em PowerShell, float
e mapear double
para System.Single
e System.Double
, respectivamente.
4.2.4.2 decimal
Tipo decimal usa uma representação de 128 bits. No mínimo, deve suportar uma escala de tal forma que 0 <= s <= pelo menos 28, e uma gama de valor -79228162514264337593543950335 79228162514264337593543950335. A representação real da decimal é definida.
O tipo decimal tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
MaxValue | Propriedade estática (apenas para leitura) | decimal | O maior valor possível de decimal tipo |
MinValue | Propriedade estática (apenas para leitura) | decimal | O menor valor possível de tipo decimal |
Nota
Os números reais decimais têm uma característica chamada escala, que representa o número de dígitos à direita do ponto decimal. Por exemplo, o valor 2.340 tem uma escala de 3 onde os zeros de fuga são significativos. Quando dois números reais decimais são adicionados ou subtraídos, a escala do resultado é maior das duas escalas. Por exemplo, 1.0 + 2.000 é 3.000, enquanto 5.0 - 2.00 é 3.00. Quando dois números reais decimais são multiplicados, a escala do resultado é a soma das duas escalas. Por exemplo, 1.0 * 2.000 é 2.0000. Quando dois números reais decimais são divididos, a escala do resultado é a escala do primeiro menos a escala do segundo. Por exemplo, 4.00000/2.000 é 2.00. No entanto, uma escala não pode ser inferior à necessária para preservar o resultado correto. Por exemplo, 3.000/2.000, 3.00/2.000, 3.0/2.000 e 3/2 são todos 1,5.
Em PowerShell, decimal
mapas para System.Decimal
. A representação da decimal é a seguinte:
- Quando considerado como uma matriz de quatro
int
valores, contém os seguintes elementos:- O índice 0 (bits 0-31) contém os 32 bits de baixa ordem do coeficiente decimal.
- O índice 1 (bits 32-63) contém os 32 bits médios do coeficiente da decimal.
- O índice 2 (bits 64-95) contém os 32 bits de alta ordem do coeficiente da decimal.
- O Índice 3 (bits 96-127) contém a broca e a escala do sinal, da seguinte forma:
- bits 0--15 são zero
- bits 16-23 contém a escala como um valor 0--28
- bits 24-30 são zero
- bit 31 é o sinal (0 para positivo, 1 para negativo)
4.2.5 O tipo de comutação
Este tipo é utilizado para conter o tipo de parâmetro num comando (§8.10.5). Se estiver presente um argumento com o nome do parâmetro correspondente, os ensaios de parâmetros $true; caso contrário, testa $false
.
Em PowerShell, switch
mapas para System.Management.Automation.SwitchParameter
.
4.2.6 Tipos de enumeração
Um tipo de enumeração é aquele que define um conjunto de constantes nomeadas representando todos os valores possíveis que podem ser atribuídos a um objeto desse tipo de enumeração. Em alguns casos, o conjunto de valores é tal que apenas um valor pode ser representado de cada vez. Noutros casos, o conjunto de valores são poderes distintos de dois, e utilizando o operador de -bor (§7.8.5), os valores múltiplos podem ser codificados no mesmo objeto.
O ambiente PowerShell fornece uma série de tipos de enumeração, conforme descrito nas seguintes secções.
4.2.6.1 Action-Preference tipo
Este tipo definido para a implementação tem os seguintes membros acessíveis mutuamente exclusivos:
Membro | Membro Tipo | Objetivo |
---|---|---|
Continuar | Constante de enumeração | O tempo de execução powerShell continuará a ser processado e notificará o utilizador de que ocorreu uma ação. |
Inquirir | Constante de enumeração | O tempo de funcionaamento do PowerShell deixará de ser processado e perguntará ao utilizador como deve proceder. |
SilentlyContinue | Constante de enumeração | O tempo de execução powerShell continuará a ser processado sem notificar o utilizador de que ocorreu uma ação. |
Parar | Constante de enumeração | O tempo de funcionaamento powerShell deixará de ser processado quando ocorrer uma ação. |
No PowerShell, este tipo é System.Management.Automation.ActionPreference
.
4.2.6.2 Confirm-Impact tipo
Este tipo definido para a implementação tem os seguintes membros acessíveis mutuamente exclusivos:
Membro | Membro Tipo | Objetivo |
---|---|---|
Alto | Constante de enumeração | A ação executada tem um alto risco de perder dados, como reformar um disco rígido. |
Baixo | Constante de enumeração | A ação executada tem um baixo risco de perda de dados. |
Médio | Constante de enumeração | A ação executada tem um risco médio de perder dados. |
Nenhuma | Constante de enumeração | Não confirme quaisquer ações (suprimir todos os pedidos de confirmação). |
No PowerShell, este tipo é System.Management.Automation.ConfirmImpact
.
4.2.6.3 tipo File-Attributes
Este tipo definido para a implementação tem os seguintes membros acessíveis, que podem ser combinados:
Membro | Membro Tipo | Objetivo |
---|---|---|
Arquivo | Constante de enumeração | O estado do arquivo do ficheiro. As aplicações utilizam este atributo para marcar ficheiros para cópia de segurança ou remoção. |
Comprimidos | Constante de enumeração | O ficheiro está comprimido. |
Dispositivo | Reservado para uso futuro. | |
Diretório | Constante de enumeração | O ficheiro é um diretório. |
Encriptados | Constante de enumeração | O ficheiro ou diretório está encriptado. Para um ficheiro, isto significa que todos os dados do ficheiro estão encriptados. Para um diretório, isto significa que a encriptação é o padrão para ficheiros e diretórios recém-criados. |
Oculto | Constante de enumeração | O ficheiro está escondido e, portanto, não está incluído numa listagem ordinária. |
Normal | Constante de enumeração | O ficheiro é normal e não tem outros atributos definidos. Este atributo só é válido se for utilizado sozinho. |
NãoContentIndexed | Constante de enumeração | O ficheiro não será indexado pelo serviço de indexação de conteúdos do sistema operativo. |
Offline | Constante de enumeração | O ficheiro está desligado. Os dados do ficheiro não estão imediatamente disponíveis. |
ReadOnly | Constante de enumeração | O ficheiro é só para leitura. |
ReparsePoint | Constante de enumeração | O ficheiro contém um ponto de reparse, que é um bloco de dados definidos pelo utilizador associados a um ficheiro ou a um diretório. |
EsparsoFile | Constante de enumeração | O ficheiro é um ficheiro escasso. Os ficheiros escassos são normalmente ficheiros grandes cujos dados são na sua maioria zeros. |
Sistema | Constante de enumeração | O ficheiro é um ficheiro do sistema. O ficheiro faz parte do sistema operativo ou é utilizado exclusivamente pelo sistema operativo. |
Temporária | Constante de enumeração | O ficheiro é temporário. Os sistemas de ficheiros tentam manter todos os dados na memória para um acesso mais rápido em vez de reenervar os dados para armazenamento em massa. Um ficheiro temporário deve ser eliminado pelo pedido logo que já não seja necessário. |
No PowerShell, este tipo é System.IO.FileAttributes com atributo FlagsAttribute.
4.2.6.4 Tipo de opção de expressão regular
Este tipo definido para a implementação tem os seguintes membros acessíveis, que podem ser combinados:
Membro | Membro Tipo | Objetivo |
---|---|---|
IgnoreCase | Constante de enumeração | Especifica que a correspondência é insensível a caso. |
Nenhuma | Constante de enumeração | Especifica que não há opções definidas. |
Uma implementação pode fornecer outros valores.
No PowerShell, este tipo é System.Text.RegularExpressions.RegexOptions
com atributo FlagsAttribute
. Os seguintes valores extra são definidos: , , , , , , Multiline
, , RightToLeft
, . Singleline``IgnorePatternWhitespace``ExplicitCapture``ECMAScript``CultureInvariant``Compiled
4.3 Tipos de referência
4.3.1 Cordas
Um valor de corda tem uma cadeia tipo e é uma sequência imutável de caracteres zero ou mais de tipo de char cada um contendo um ponto de código Unicode codificado utf-16-16.
A cadeia tipo tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Comprimento | Propriedade de exemplo | int (apenas ler) | Obtém o número de caracteres na corda |
ToLower | Método de instância | string | Cria uma nova cadeia que contém o equivalente minúsculo |
Toupper | Método de instância | string | Cria uma nova cadeia que contém o equivalente maiúscula |
Em PowerShell, string
mapas para System.String
.
4.3.2 Matrizes
Todos os tipos de matrizes são derivados do tipo Array
. Este tipo tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Comprimento | Propriedade de instância (apenas para leitura) | int | Número de elementos na matriz |
Posição | Propriedade de instância (apenas para leitura) | int | Número de dimensões na matriz |
Copiar | Método Estático | coluna void/ver Propósito | Copia uma gama de elementos de uma matriz para outra. Existem quatro versões, onde a fonte é a matriz de origem, o destino é a matriz de destino, a contagem é o número de elementos a copiar, e sourceIndex e destinationIndex são os locais de partida nas respetivas matrizes: Cópia (fonte, destino, contagem int) |
GetLength | Método de instância (apenas para leitura) | int/nenhum | Número de elementos numa determinada dimensão GetLength ( dimensão int) |
Para mais detalhes sobre as matrizes, consulte §9.
Em PowerShell, Array
mapas para System.Array
.
4.3.3 Hashtables
O Tipo Hashtable tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
de palavras | Propriedade de exemplo | int | Obtém o número de pares chave/valor no Hashtable |
Chaves | Propriedade de exemplo | Definido pela implementação | Recebe uma coleção de todas as chaves |
Valores | Propriedade de exemplo | Definido pela implementação | Recebe uma coleção de todos os valores |
Remover | Método de instância | vazio/nenhum | Remove a chave/valor designado |
Para mais detalhes sobre Hashtables, consulte §10.
Em PowerShell, Hashtable
mapas para System.Collections.Hashtable
. Hashtable
os elementos são armazenados num objeto de tipo DictionaryEntry
, e as coleções devolvidas por Chaves e Valores têm tipo ICollection
.
4.3.4 O tipo xml
O tipo xml implementa o Modelo de Objeto de Documento W3C (DOM) Nível 1 Core e o Núcleo DOM Nível 2. O DOM é uma representação de árvore em memória (cache) de um documento XML e permite a navegação e edição deste documento. Este tipo suporta o operador subscrito [] (§7.1.4.4).
Em PowerShell, xml
mapas para System.Xml.XmlDocument
.
4.3.5 O tipo regex
O tipo regex
fornece maquinaria para apoiar o processamento regular de expressões. É utilizado para conter o tipo de parâmetro (§5.3) cujo argumento correspondente pode conter uma expressão regular.
Em PowerShell, regex
mapas para System.Text.RegularExpressions.Regex
.
4.3.6 O tipo ref
Normalmente, os argumentos são passados para comandos por valor. No caso de um argumento com algum valor tipo uma cópia do valor é passada. No caso de um argumento com algum tipo de referência, é passada uma cópia da referência.
O tipo ref fornece maquinaria para permitir que os argumentos sejam passados para comandos por referência, para que os comandos possam modificar o valor do argumento. O tipo ref tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Valor | Propriedade de exemplo (ler-escrever) | O tipo de valor a ser referenciado. | Recebe/define o valor a ser referenciado. |
Considere a seguinte definição de função e chamada:
function Doubler {
param ([ref]$x) # parameter received by reference
$x.Value *= 2.0 # note that 2.0 has type double
}
$number = 8 # designates a value of type int, value 8
Doubler([ref]$number) # argument received by reference
$number # designates a value of type double, value 8.0
Considere o caso em que $number é limitador de tipo:
[int]$number = 8 # designates a value of type int, value 8
Doubler([ref]$number) # argument received by reference
$number # designates a value of type int, value 8
Como mostrado, tanto o argumento como o parâmetro correspondente devem ser declarados ref
.
Em PowerShell, ref
mapas para System.Management.Automation.PSReference
.
4.3.7 O tipo de bloco de script
O tipo scriptblock
representa um bloco pré-bloqueado de texto de script (§7.1.8) que pode ser usado como uma única unidade. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Atributos | Propriedade de instância (apenas leitura) | Coleção de atributos | Obtém os atributos do bloco de scripts. |
Ficheiro | Propriedade de instância (apenas leitura) | string | Obtém o nome do ficheiro no qual o bloco de scripts é definido. |
Módulo | Propriedade de instância (apenas leitura) | implementação definida ([§4.5.12][§4.5.12]) | Obtém informações sobre o módulo em que o bloco de scripts é definido. |
GetNewClosure | Método de instância | bloco de scripts /nenhum |
Recupera um bloco de scripts que está ligado a um módulo. Quaisquer variáveis locais que estejam no contexto do chamador serão copiadas para o módulo. |
Invocar | Método de instância | Recolha de objeto/objeto[] | Invoca o bloco de scripts com os argumentos especificados e devolve os resultados. |
Invocar AsEsIs | Método de instância | objeto/objeto[] | Invoca o bloco de scripts com os argumentos especificados e devolve quaisquer objetos gerados. |
Criar | Método estático | bloco de scripts /corda |
Cria um novo objeto de scriptblock que contém o script especificado. |
Em PowerShell, scriptblock
mapas para System.Management.Automation.ScriptBlock
. Invoke
devolve uma coleção de PsObject
.
4.3.8 O tipo matemático
O tipo math
fornece acesso a algumas constantes e métodos úteis em cálculos matemáticos. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
E | Propriedade estática (apenas para leitura) | double | Base logarítmica natural |
PI | Propriedade estática (apenas para leitura) | double | Relação da circunferência de um círculo ao seu diâmetro |
Abs | Método estático | numérico/numérico | Valor absoluto (o tipo de retorno é o mesmo que o tipo de argumento passado) |
Acos | Método estático | duplo / duplo | Ângulo cujo cosine é o número especificado |
Asin | Método estático | duplo / duplo | Ângulo cuja sena é o número especificado |
Atan | Método estático | duplo / duplo | Ângulo cuja tangente é o número especificado |
Atan2 | Método estático | duplo / duplo y, duplo x | Ângulo cuja tangente é o quociente de dois números especificados x e y |
Ceiling | Método estático | decimal / decimal duplo / duplo |
menor número inteiro maior ou igual ao número especificado |
Cos | Método estático | duplo / duplo | Cosine do ângulo especificado |
Cosh | Método estático | duplo / duplo | Cosina hiperbólica do ângulo especificado |
Exp | Método estático | duplo / duplo | e elevado à potência especificada |
Floor | Método estático | decimal / decimal duplo / duplo |
Maior número inteiro menos ou igual ao número especificado |
Registo | Método estático | número duplo / duplo número duplo / duplo, base dupla |
Logaritmos de número usando base e ou base |
Log10 | Método estático | duplo / duplo | Logaritmo base-10 de um número especificado |
Máx | Método estático | numérico/numérico | Maior de dois números especificados (o tipo de retorno é o mesmo que o tipo de argumentos passados) |
Mín | Método estático | numérico/numérico, numérico | Menor de dois números especificados (o tipo de devolução é o mesmo que o tipo de argumentos passados) |
Pow | Método estático | duplo / duplo x, duplo y | Um número especificado x elevado ao poder especificado y |
Sin | Método estático | duplo / duplo | Sine do ângulo especificado |
Sinh | Método estático | duplo / duplo | Sine hiperbólico do ângulo especificado |
Sqrt | Método estático | duplo / duplo | Raiz quadrada de um número especificado |
Tan | Método estático | duplo / duplo | Tangente do ângulo especificado |
Tanh | Método estático | duplo / duplo | Tangente hiperbólica do ângulo especificado |
Em PowerShell, Math
mapas para System.Math
.
4.3.9 O tipo ordenado
Tipo ordered
é um pseudo-tipo usado apenas para conversões.
4.3.10 O tipo pscustomobject
Tipo pscustomobject
é um pseudo-tipo usado apenas para conversões.
4.4 Tipos genéricos
Uma série de linguagens e ambientes de programação fornecem tipos que podem ser especializados. Muitos destes tipos são referidos como tipos de contentores, uma vez que os casos são capazes de conter objetos de outro tipo. Considere um tipo chamado Stack que pode representar uma pilha de valores, que pode ser empurrado e rebentado. Normalmente, o utilizador de uma pilha quer armazenar apenas um tipo de objeto nessa pilha. No entanto, se a linguagem ou o ambiente não suportam a especialização do tipo, várias variantes distintas do tipo Stack devem ser implementadas, mesmo que todas executem a mesma tarefa, apenas com diferentes elementos do tipo.
A especialização do tipo permite implementar um tipo genérico de modo a que possa ser limitado a manusear alguns subtipos de tipos quando é utilizado. Por exemplo,
- Um tipo de pilha genérica que é especializado para segurar cordas pode ser escrito como
Stack[string]
. - Um tipo de dicionário genérico especializado para segurar teclas int com valores de cordas associados pode ser escrito como
Dictionary[int,string]
. - Uma pilha de cordas pode ser escrita como
Stack[Stack[string]]
.
Embora o PowerShell não defina quaisquer tipos genéricos incorporados, pode utilizar tais tipos se forem fornecidos pelo ambiente de hospedeiro. Veja a sintaxe em §7.1.10.
O nome completo para o tipo Stack[string]
acima sugerido é System.Collections.Generic.Stack[string]
. O nome completo para o tipo Dictionary[int,string]
acima sugerido é System.Collections.Generic.Dictionary[int,string]
.
4.5 Tipos anónimos
Em algumas circunstâncias, uma implementação do PowerShell cria objetos de algum tipo, e esses objetos têm membros acessíveis ao script. Todavia, o nome efetivo desses tipos não precisa de ser especificado, desde que os membros acessíveis sejam suficientemente especificados para que possam ser utilizados. Ou seja, os scripts podem salvar objetos desses tipos e aceder aos seus membros sem realmente saberem os nomes desses tipos. As seguintes subsecções especificam estes tipos.
4.5.1 Tipo de descrição do fornecedor
Este tipo engloba o estado de um fornecedor. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Unidades | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.2) | Uma coleção de objetos de descrição de unidade |
Name | Propriedade de instância (apenas leitura) | string | O nome do provedor |
No PowerShell, este tipo é System.Management.Automation.ProviderInfo
.
4.5.2 Tipo de descrição de unidade
Este tipo encapsula o estado de uma unidade. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
ActualLocalização | Propriedade de exemplo (ler-escrever) | string | O local de trabalho atual (§3.1.4) da unidade |
Description | Propriedade de exemplo (ler-escrever) | string | A descrição da unidade |
Name | Propriedade de instância (apenas leitura) | string | O nome da unidade |
Raiz | Propriedade de instância (apenas leitura) | string | O nome da unidade |
No PowerShell, este tipo é System.Management.Automation.PSDriveInfo
.
4.5.3 Tipo de descrição variável
Este tipo encapsula o estado de uma variável. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Atributos | Propriedade de instância (apenas leitura) | Implementação definida | Uma coleção de atributos |
Description | Propriedade de exemplo (ler-escrever) | string | A descrição atribuída à variável através dos cmdlets new-variable ou set-variable . |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo a partir do qual esta variável foi exportada |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O módulo em que esta variável foi definida |
Name | Propriedade de instância (apenas leitura) | string | O nome atribuído à variável quando foi criado na língua PowerShell ou através dos New-Variable cmdlets e Set-Variable cmdlets. |
Opções | Propriedade de exemplo (ler-escrever) | string | As opções atribuídas à variável através dos New-Variable cmdlets e Set-Variable cmdlets. |
Valor | Propriedade de exemplo (ler-escrever) | objeto | O valor atribuído à variável quando foi atribuído na língua PowerShell ou através dos New-Variable cmdlets e Set-Variable cmdlets. |
No PowerShell, este tipo é System.Management.Automation.PSVariable
.
Windows PowerShell: O tipo de coleção de atributos é System.Management.Automation.PSVariableAttributeCollection.
4.5.4 Tipo de descrição de alias
Este tipo encapsula o estado de um pseudónimo. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Tipo de Comando | Propriedade de instância (apenas leitura) | Implementação definida | Deve comparar-se com "Alias". |
Definição | Propriedade de instância (apenas leitura) | string | O comando ou pseudónimo ao qual o pseudónimo foi atribuído através dos cmdlets New-Alias ou Set-Alias . |
Description | Propriedade de exemplo (ler-escrever) | string | A descrição atribuída ao pseudónimo através dos New-Alias cmdlets ou Set-Alias cmdlets. |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo a partir do qual este pseudónimo foi exportado |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O módulo em que este pseudónimo foi definido |
Name | Propriedade de instância (apenas leitura) | string | O nome atribuído ao pseudónimo quando foi criado através dos New-Alias cmdlets ou Set-Alias cmdlets. |
Opções | Propriedade de exemplo (ler-escrever) | string | As opções atribuídas ao pseudónimo através do New-Alias New-Alias ou Set-Alias cmdlets. |
Tipo de saída | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os tipos de saída dos valores pelo comando a que o pseudónimo se refere. |
Parâmetros | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Os parâmetros do comando. |
Parâmetros Conjuntos | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Informação sobre os parâmetros associados ao comando. |
Comumand referenciado | Propriedade de instância (apenas leitura) | Implementação definida | Informação sobre o comando que é imediatamente referenciado por este pseudónimo. |
ResolvidaCommand | Propriedade de instância (apenas leitura) | Implementação definida | Informação sobre o comando ao qual o pseudónimo eventualmente resolve. |
No PowerShell, este tipo é System.Management.Automation.AliasInfo
.
4.5.5 Tipo de descrição da localização de trabalho
Este tipo encapsula o estado de um local de trabalho. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Lista de unidades | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.2) | Um objeto de descrição de unidade |
Caminho | Propriedade de instância (apenas leitura) | string | O local de trabalho |
Fornecedor | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.1) | O provedor |
ProvedorA DePata | Propriedade de instância (apenas leitura) | string | O caminho atual do provedor |
Uma pilha de locais de trabalho é uma coleção de objetos de localização de trabalho, como descrito acima.
No PowerShell, um local de trabalho atual é representado por um objeto do tipo System.Management.Automation.PathInfo
. Uma pilha de locais de trabalho é representada por um objeto do tipo System.Management.Automation.PathInfoStack
, que é uma coleção de PathInfo
objetos.
4.5.6 Tipo de descrição variável do ambiente
Este tipo encapsula o estado de uma variável ambiental. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Name | Propriedade de exemplo (ler-escrever) | string | O nome da variável ambiental |
Valor | Propriedade de exemplo (ler-escrever) | string | O valor da variável ambiental |
No PowerShell, este tipo é System.Collections.DictionaryEntry
. O nome da variável é a chave do dicionário. O valor da variável ambiental é o valor do dicionário. O nome é um AliasProperty
que equivale a Key.
4.5.7 Tipo de descrição da aplicação
Este tipo encapsula o estado de uma aplicação. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Tipo de Comando | Propriedade de instância (apenas leitura) | Implementação definida | Deve comparar-se igual a "Aplicação". |
Definição | Propriedade de instância (apenas leitura) | string | Uma descrição do pedido. |
Extensão | Propriedade de exemplo (ler-escrever) | string | A extensão do ficheiro de candidatura. |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo que define este comando. |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O nome do módulo que define o comando. |
Name | Propriedade de instância (apenas leitura) | string | O nome do comando. |
Tipo de saída | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os tipos de saída dos valores pelo comando. |
Parâmetros | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Os parâmetros do comando. |
Parâmetros Conjuntos | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Informação sobre os parâmetros associados ao comando. |
Caminho | Propriedade de instância (apenas leitura) | string | Obtém o caminho do ficheiro de inscrição. |
No PowerShell, este tipo é System.Management.Automation.ApplicationInfo
.
4.5.8 Tipo de descrição do cmdlet
Este tipo encapsula o estado de um cmdlet. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Tipo de Comando | Propriedade de instância (apenas leitura) | Implementação definida | Deve comparar-se com "Cmdlet". |
PadrãoParameterSet | Propriedade de instância (apenas leitura) | Implementação definida | O parâmetro padrão definido que é utilizado se o PowerShell não conseguir determinar qual o parâmetro definido a utilizar com base nos argumentos fornecidos. |
Definição | Propriedade de instância (apenas leitura) | string | Uma descrição do cmdlet. |
HelpFile | Propriedade de exemplo (ler-escrever) | string | O caminho para o ficheiro ajuda para o cmdlet. |
Tipo de Implementação | Propriedade de exemplo (ler-escrever) | Implementação definida | O tipo que implementa o cmdlet. |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo que define este cmdlet. |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O nome do módulo que define o cmdlet. |
Name | Propriedade de instância (apenas leitura) | string | O nome do cmdlet. |
Substantivo | Propriedade de instância (apenas leitura) | string | O nome substantivo do cmdlet. |
Tipo de saída | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os tipos de saída dos valores pelo cmdlet. |
Parâmetros | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Os parâmetros do cmdlet. |
Parâmetros Conjuntos | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Informação sobre os conjuntos de parâmetros associados ao cmdlet. |
Verbo | Propriedade de instância (apenas leitura) | string | O nome verbo do cmdlet. |
PSSnapIn | Propriedade de instância (apenas leitura) | Implementação definida | Windows PowerShell: Informações sobre o encaixe Windows Powershell que é usado para registar o cmdlet. |
No PowerShell, este tipo é System.Management.Automation.CmdletInfo
.
4.5.9 Tipo de descrição do guião externo
Este tipo encapsula o estado de uma escrita externa (que é diretamente executável pela PowerShell, mas que não está incorporada). Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Tipo de Comando | Propriedade de instância (apenas leitura) | Implementação definida | Deve comparar-se com "ExternalScript". |
Definição | Propriedade de instância (apenas leitura) | string | Uma definição do guião. |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo que define este guião. |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O nome do módulo que define o script. |
Name | Propriedade de instância (apenas leitura) | string | O nome do guião. |
OriginalEncoding | Propriedade de instância (apenas leitura) | Implementação definida | A codificação original usada para converter os caracteres do script para bytes. |
Tipo de saída | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os tipos de saída dos valores pelo script. |
Parâmetros | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Os parâmetros do guião. |
Parâmetros Conjuntos | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Informação sobre os conjuntos de parâmetros associados ao script. |
Caminho | Propriedade de instância (apenas leitura) | string | O caminho para o ficheiro do guião. |
ScriptBlock | Propriedade de instância (apenas leitura) | bloco de scripts | O guião externo. |
ScriptContents | Propriedade de instância (apenas leitura) | string | O conteúdo original do guião. |
No PowerShell, este tipo é System.Management.Automation.ExternalScriptInfo
.
4.5.10 Tipo de descrição da função
Este tipo encapsula o estado de uma função. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
CmdletBinding | Propriedade de instância (apenas leitura) | bool | Indica se a função utiliza a mesma ligação de parâmetros que os cmdlets compilados utilizam (ver §12.3.5). |
Tipo de Comando | Propriedade de instância (apenas leitura) | Implementação definida | Pode ser comparado para a igualdade com "Função" ou "Filtro" para ver qual desses objetos representa. |
PadrãoParameterSet | Propriedade de instância (apenas leitura) | string | Especifica o parâmetro definido para utilizar se tal não puder ser determinado a partir dos argumentos (ver §12.3.5). |
Definição | Propriedade de instância (apenas leitura) | string | Uma versão de cadeia do ScriptBlock |
Description | Propriedade de exemplo (ler-escrever) | string | A descrição da função. |
Módulo | Propriedade de instância (apenas leitura) | Implementação definida (§4.5.12) | O módulo a partir do qual esta função foi exportada |
Nome do Módulo | Propriedade de instância (apenas leitura) | string | O módulo em que esta função foi definida |
Name | Propriedade de instância (apenas leitura) | string | O nome da função |
Opções | Propriedade de exemplo (ler-escrever) | Implementação definida | As opções de âmbito para a função (§3.5.4). |
Tipo de saída | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os tipos de saída dos valores, por ordem (ver §12.3.6). |
Parâmetros | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Especifica os nomes dos parâmetros, por ordem. Se a função agir como um cmdlet (ver CmdletBinding acima), os parâmetros comuns estão incluídos no final da coleção. |
Parâmetros Conjuntos | Propriedade de instância (apenas leitura) | Coleção definida de implementação | Informação sobre os parâmetros associados ao comando. Para cada parâmetro, o resultado mostra o nome e o tipo do parâmetro, e indica se o parâmetro é obrigatório, por posição ou por um parâmetro de comutação. Se a função agir como um cmdlet (ver CmdletBinding acima), os parâmetros comuns estão incluídos no final da coleção. |
ScriptBlock | Propriedade de instância (apenas leitura) | scriptblock (§4.3.6) | O corpo da função |
No PowerShell, este tipo é System.Management.Automation.FunctionInfo
.
CommandType
tem tipoSystem.Management.Automation.CommandTypes
.Options
tem tipoSystem.Management.Automation.ScopedItemOptions
.OutputType
tem tipoSystem.Collections.ObjectModel.ReadOnlyCollection``1[[System.Management.Automation.PSTypeName,System.Management.Automation]]
.Parameters
tem tipoSystem.Collections.Generic.Dictionary``2[[System.String,mscorlib],[System.Management.Automation.ParameterMetadata,System.Management.Automation]]
.ParameterSets
tem tipoSystem.Collections.ObjectModel.ReadOnlyCollection``1[[System.Management.Automation.CommandParameterSetInfo,System.Management.Automation]]
.- A visibilidade tem o tipo
System.Management.Automation.SessionStateEntryVisibility
. - PowerShell também tem uma propriedade chamada Visibilidade.
4.5.11 Tipo de descrição do filtro
Este tipo encapsula o estado de um filtro. Tem o mesmo conjunto de membros acessíveis que o tipo de descrição da função (§4.5.10).
No PowerShell, este tipo é System.Management.Automation.FilterInfo
. Tem o mesmo conjunto de propriedades que System.Management.Automation.FunctionInfo
(§4.5.11).
4.5.12 Tipo de descrição do módulo
Este tipo encapsula o estado de um módulo. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Description | Propriedade de exemplo (ler-escrever) | string | A descrição do módulo (definido pelo manifesto) |
MóduloType | Propriedade de instância (apenas leitura) | Implementação definida | O tipo do módulo (Manifesto, Script ou Binário) |
Name | Propriedade de instância (apenas leitura) | string | O nome do módulo |
Caminho | Propriedade de instância (apenas leitura) | string | O caminho do módulo |
No PowerShell, este tipo é System.Management.Automation.PSModuleInfo
. O tipo de ModuleType
é System.Management.Automation.ModuleType
.
4.5.13 Tipo de descrição de objeto personalizado
Este tipo encapsula o estado de um objeto personalizado. Não tem membros acessíveis.
No PowerShell, este tipo é System.Management.Automation.PSCustomObject
. Os cmdlets Import-Module
e New-Object
podem gerar um objeto deste tipo.
4.5.14 Tipo de descrição do comando
A variável $PsCmdlet
automática é um objeto que representa o cmdlet ou função que está a ser executado. O tipo deste objeto é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Nome DeSet De Parâmetros | Propriedade de instância (apenas leitura) | string | Nome do parâmetro atual (ver Nome set De parâmetro) |
Deve Continuar | Método de instância | Sobrecarregado /bool |
Solicita a confirmação de uma operação do utilizador. |
Deve Processar | Método de instância | Sobrecarregado /bool |
Solicita confirmação do utilizador antes de ser realizada uma operação. |
No PowerShell, este tipo é System.Management.Automation.PSScriptCmdlet.
4.5.15 Tipo de descrição do registo de erro
A variável $Error
automática contém uma coleção de registos de erros que representam erros recentes (§3.12). Embora o tipo desta coleção não seja especificado, ele suporta a subescrição para ter acesso a registos de erros individuais.
No PowerShell, o tipo de recolha é System.Collections.ArrayList
. O tipo de registo de erro individual na coleção é System.Management.Automation.ErrorRecord
. Este tipo tem os seguintes imóveis públicos:
- CategoriaInfo - Obtém informações sobre a categoria do erro.
- ErrorDetails - Obtém e define informações de erro mais detalhadas, como uma mensagem de erro de substituição.
- Exceção - Obtém a exceção associada a este registo de erro.
- FullQualifiedErrorId - Obtém o identificador de erro totalmente qualificado para este registo de erro.
- InvocationInfo - Obtém informações sobre o comando que foi invocado quando ocorreu o erro.
- PipelineIterationInfo - Obtém o estado do gasoduto quando este registo de erro foi criado
- TargetObject - Obtém o objeto que estava a ser processado quando ocorreu o erro.
4.5.16 Tipo de descrição do enumerador
Algumas variáveis são enumeradores para coleções (§4). A variável $foreach
automática é o enumerador criado para qualquer foreach
declaração. A variável $input
automática é o enumerador de uma coleção entregue a uma função a partir do gasoduto. A variável $switch
automática é o enumerador criado para qualquer switch
declaração.
O tipo de enumerador é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Atual | Propriedade de instância (apenas leitura) | objeto | Obtém o elemento atual na coleção. Se o enumerador não estiver atualmente posicionado num elemento da coleção, o comportamento é definido. |
MoveNext | Método de instância | Nenhum/bool | Avança o enumerador para o próximo elemento da coleção. Devoluções $true se o enumerador foi avançado com sucesso para o elemento seguinte; $false se o enumerador passou o fim da coleção. |
No PowerShell, estes membros são definidos na interface System.IEnumerator
, que é implementada pelos tipos identificados abaixo. Se o enumerador não estiver atualmente posicionado num elemento da coleção, é levantada uma exceção do tipo InvalidOperationException
. Para $foreach
, este tipo é System.Array+SZArrayEnumerator
. Para $input
, este tipo é System.Collections.ArrayList+ArrayListEnumeratorSimple
. Para $switch
, este tipo é System.Array+SZArrayEnumerator
.
4.5.17 Tipo de descrição do diretório
O cmdlet New-Item pode criar itens de vários tipos, incluindo diretórios fileSystem. O tipo de objeto de descrição do diretório é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Atributos | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.2.6.3) | Recebe ou define um ou mais dos atributos do objeto do diretório. |
HoraDaCriação | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.5.19) | Obtém e define o tempo de criação do objeto do diretório. |
Extensão | Propriedade de instância (apenas ler) | string | Obtém a parte da extensão do nome do diretório. |
FullName | Propriedade de instância (apenas leitura) | string | Fica com o caminho completo do diretório. |
Última Hora da Morte | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.5.19) | Recebe e define o tempo em que o diretório foi escrito pela última vez. |
Name | Propriedade de instância (apenas ler) | string | Tem o nome do diretório. |
No PowerShell, este tipo é System.IO.DirectoryInfo
. O tipo de propriedade Atributos é System.IO.FileAttributes
.
4.5.18 Tipo de descrição de ficheiro
O cmdlet New-Item
pode criar itens de vários tipos, incluindo ficheiros FileSystem. O tipo de objeto de descrição de ficheiro é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Atributos | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.2.6.3) | Recebe ou define um ou mais dos atributos do objeto de ficheiro. |
Nome base | Propriedade de instância (apenas ler) | string | Obtém o nome do ficheiro excluindo a extensão. |
HoraDaCriação | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.5.19) | Obtém e define o tempo de criação do objeto de arquivo. |
Extensão | Propriedade de instância (apenas ler) | string | Obtém a parte da extensão do nome do ficheiro. |
FullName | Propriedade de instância (apenas leitura) | string | Fica com o caminho completo do ficheiro. |
Última Hora da Morte | Propriedade de exemplo (ler-escrever) | Implementação definida (§4.5.19) | Recebe e define a hora em que o ficheiro foi escrito pela última vez. |
Comprimento | Propriedade de instância (apenas ler) | long | Fica com o tamanho do ficheiro, em bytes. |
Name | Propriedade de instância (apenas ler) | string | O nome do ficheiro. |
VersionInfo | Propriedade de instância (apenas ler) | Implementação definida | Windows PowerShell: Esta ScriptProperty devolve um System.Diagnostics.FileVersionInfo para o ficheiro. |
No PowerShell, este tipo é System.IO.FileInfo
.
4.5.19 Date-Time tipo de descrição
O tipo de objeto de descrição da data é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Dia | Propriedade de instância (apenas leitura) | int | Obtém o componente do dia do mês representado por este caso. |
Hora | Propriedade de instância (apenas leitura) | int | Obtém o componente de hora da data representado por este caso. |
Minuto | Propriedade de instância (apenas leitura) | int | Obtém o componente minúsculo da data representada por este caso. |
Mensal | Propriedade de instância (apenas leitura) | int | Obtém o componente mensal da data representada por este caso. |
Second | Propriedade de instância (apenas leitura) | int | Obtém o componente de segundos da data representado por este caso. |
Anual | Propriedade de instância (apenas leitura) | int | Obtém-se o componente do ano da data representada por este caso. |
Um objeto deste tipo pode ser criado por cmdlet Get-Date.
No PowerShell, este tipo é System.DateTime
.
4.5.20 Group-Info tipo de descrição
O tipo de objeto de descrição de informação de grupo é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
de palavras | Propriedade de instância (apenas leitura) | int | Obtém o número de elementos no grupo. |
Group | Propriedade de instância (apenas leitura) | Coleção definida para implementação | Obtém os elementos do grupo. |
Name | Propriedade de instância (apenas leitura) | string | Tem o nome do grupo. |
Valores | Propriedade de instância (apenas leitura) | Coleção definida para implementação | Obtém os valores dos elementos do grupo. |
Um objeto deste tipo pode ser criado por cmdlet Group-Object.
No PowerShell, este tipo é Microsoft.PowerShell.Commands.GroupInfo
.
4.5.21 Tipo de descrição genérica-medida-info
O tipo de objeto de descrição genérica de informação de medida é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Média | Propriedade de instância (apenas leitura) | double | Obtém a média dos valores das propriedades que são medidas. |
de palavras | Propriedade de instância (apenas leitura) | int | Obtém o número de objetos com as propriedades especificadas. |
Máximo | Propriedade de instância (apenas leitura) | double | Obtém o valor máximo das propriedades especificadas. |
Mínimo | Propriedade de instância (apenas leitura) | double | Obtém o valor mínimo das propriedades especificadas. |
Propriedade | Propriedade de instância (apenas leitura) | string | Faz com que a propriedade seja medida. |
Soma | Propriedade de instância (apenas leitura) | double | Obtém a soma dos valores das propriedades especificadas. |
Um objeto deste tipo pode ser criado por cmdlet Measure-Object.
No PowerShell, este tipo é Microsoft.PowerShell.Commands.GenericMeasureInfo
.
4.5.22 Tipo de descrição de texto-medida-info
O tipo de objeto de descrição de informação de texto é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Personagens | Propriedade de instância (apenas leitura) | int | Obtém o número de caracteres no objeto alvo. |
Linhas | Propriedade de instância (apenas leitura) | int | Obtém o número de linhas no objeto alvo. |
Propriedade | Propriedade de instância (apenas leitura) | string | Faz com que a propriedade seja medida. |
Palavras | Propriedade de instância (apenas leitura) | int | Obtém o número de palavras no objeto alvo. |
Um objeto deste tipo pode ser criado por cmdlet Measure-Object
.
No PowerShell, este tipo é Microsoft.PowerShell.Commands.TextMeasureInfo
.
4.5.23 Tipo credencial
Um objeto credencial pode então ser usado em várias operações de segurança. O tipo de objeto credencial é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Palavra-passe | Propriedade de instância (apenas leitura) | Implementação definida | Obtém a senha. |
Nome de Utilizador | Propriedade de instância (apenas leitura) | string | Obtém o nome de utilizador. |
Um objeto deste tipo pode ser criado pela cmdlet Get-Credential.
No PowerShell, este tipo é System.Management.Automation.PSCredential
.
4.5.24 Tipo de designador de método
O tipo de designador de método é definido; tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Invocar | Método de instância | objeto/número variável e tipo | Requer um número variável de argumentos, e indiretamente chama o método referido pelo designador do método-mãe, passando nos argumentos. |
Um objeto deste tipo pode ser criado por uma expressão de invocação (§7.1.3).
No PowerShell, este tipo é System.Management.Automation.PSMethod.
4.5.25 Tipo de definição de membro
Este tipo encapsula a definição de membro. Tem os seguintes membros acessíveis:
Membro | Membro Tipo | Tipo | Objetivo |
---|---|---|---|
Definição | Propriedade de instância (apenas leitura) | string | Obtém a definição do membro. |
MembroType | Propriedade de instância (apenas leitura) | Implementação definida | Obtém o tipo PowerShell do membro. |
Name | Propriedade de instância (apenas leitura) | string | Tem o nome do membro. |
Nome tipo | Propriedade de instância (apenas leitura) | string | Obtém o nome do membro. |
No PowerShell, este tipo é Microsoft.PowerShell.Commands.MemberDefinition
.
4.6 Tipo extensão e adaptação
Uma implementação powerShell inclui uma família de tipos principais (que estão documentados neste capítulo) que cada um contém o seu próprio conjunto de membros base. Esses membros podem ser métodos ou propriedades, e podem ser membros de instância ou estática. Por exemplo, os membros base da cadeia tipo (§4.3.1) são os métodos de propriedade de instância e os métodos de instância ToLower e ToUpper.
Quando um objeto é criado, contém todas as propriedades de instância do tipo desse objeto, e os métodos de instância desse tipo podem ser chamados nesse objeto. Um objeto pode ser personalizado através da adição de membros de instância no tempo de execução. O resultado é chamado de objeto personalizado. Todos os membros adicionados a um caso só existem para a vida desse caso; outros casos do mesmo tipo de núcleo não são afetados.
O conjunto de membros base de um tipo pode ser aumentado pela adição dos seguintes tipos de membros:
- membros adaptados, através do Sistema de Tipo Estendido (ETS), cujos detalhes não são especificados.
- membros estendidos, através do cmdlet Add-Member.
No PowerShell, os membros estendidos também podem ser adicionados através de types.ps1xml
ficheiros. Os membros adaptados e estendidos são coletivamente chamados membros sintéticos.
O ETS adiciona os seguintes membros a todos os objetos PowerShell: psbase, psadapted, psextended e pstypenames. Consulte os parâmetros Force and View no cmdlet Get-Member para obter mais informações sobre estes membros.
Um membro da instância pode esconder um membro estendido e/ou adaptado com o mesmo nome, e um membro estendido pode esconder um membro adaptado. Nesses casos, os conjuntos de membros psadapted e psextended podem ser usados para aceder a esses membros ocultos.
Se um types.ps1xml
membro especificador um membro chamado Supports, obj.psextended
fornece acesso a apenas esse membro e não a um membro adicionado via Add-Member
.
Existem três maneiras de criar um objeto personalizado tendo um novo membro M:
Esta abordagem pode ser usada para adicionar um ou mais membros NoteProperty.
$x = New-Object PsObject -Property @{M = 123}`
Esta abordagem pode ser usada para adicionar membros NoteProperty ou ScriptMethod.
$x = New-Module -AsCustomObject {$M = 123 ; Export-ModuleMember --Variable M}`
Esta abordagem pode ser usada para adicionar qualquer tipo de membro.
$x = New-Object PsObject Add-Member -InputObject $x -Name M -MemberType NoteProperty -Value 123
PsObject
é o tipo base de todos os tipos PowerShell.
Comentários
Submeter e ver comentários