Compartilhar via


Test-Path

Determina se todos os elementos de um caminho existem.

Sintaxe

Test-Path [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType {<Any> | <Container> | <Leaf>}] [-UseTransaction] [<CommonParameters>]

Test-Path [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType {<Any> | <Container> | <Leaf>}] [-UseTransaction] [<CommonParameters>]

Descrição

O cmdlet Test-Path determina se todos os elementos do caminho existem. Ele retorna TRUE ($true) se todos os elementos existirem e FALSE ($false) se faltar algum. Ele também pode informar se a sintaxe do caminho é válida e se o caminho leva a um contêiner ou a um elemento terminal (folha).

Parâmetros

-Credential <PSCredential>

Especifica uma conta de usuário com permissão para executar essa ação. O padrão é o usuário atual.

Digite um nome de usuário, como “User01” ou “Domain01\User01”. Ou insira um objeto PSCredential, como aquele gerado pelo cmdlet Get-Credential. Uma senha será solicitada após a digitação do nome do usuário.

Este parâmetro não tem suporte em nenhum dos provedores instalados com o Windows PowerShell.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

true (ByPropertyName)

Aceitar caracteres curinga?

false

-Exclude <string[]>

Omite os itens especificados. O valor desse parâmetro qualifica o parâmetro Path. Digite um elemento ou padrão do caminho, como "*.txt". Os caracteres curinga são permitidos.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Filter <string>

Especifica um filtro no formato ou no idioma do provedor. O valor desse parâmetro qualifica o parâmetro Path. A sintaxe do filtro, incluindo o uso dos caracteres curinga, depende do provedor. Os filtros são mais eficientes que outros parâmetros, porque o provedor os aplica durante a recuperação dos objetos, em vez de fazer com que o Windows PowerShell os filtre depois de recuperados.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Include <string[]>

Testa somente os caminhos especificados. O valor desse parâmetro qualifica o parâmetro Path. Digite um elemento ou padrão do caminho, como "*.txt". Os caracteres curinga são permitidos.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-IsValid

Determina se a sintaxe do caminho está correta, a despeito do fato de os elementos do caminho existirem ou não. Esse parâmetro retornará TRUE se a sintaxe do caminho for válida e FALSE se não for.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-LiteralPath <string[]>

Especifica o caminho a ser testado. Ao contrário de Path, o valor do parâmetro LiteralPath é usado exatamente como é digitado. Nenhum caractere será interpretado como curinga. Se o caminho incluir caracteres de escape, coloque-os entre aspas simples. As aspas simples dizem ao Windows PowerShell para não interpretar quaisquer caracteres que tenham sequências de escape.

Necessário?

true

Posição?

1

Valor padrão

Aceitar entrada do pipeline?

true (ByPropertyName)

Aceitar caracteres curinga?

false

-Path <string[]>

Especifica o caminho a ser testado. Os caracteres curinga são permitidos. Se o caminho incluir espaços, coloque-o entre aspas. O nome do parâmetro ("Path") é opcional.

Necessário?

true

Posição?

1

Valor padrão

Aceitar entrada do pipeline?

true (ByValue, ByPropertyName)

Aceitar caracteres curinga?

false

-PathType <TestPathType>

Informa quando o elemento final no caminho é de um determinado tipo. Esse parâmetro retornará TRUE se o elemento for do tipo especificado e FALSE se não for.

Os valores válidos são:

-- Container: um elemento que contém outros elementos, como um diretório ou chave do Registro.

-- Leaf: um elemento que não contém outros elementos, como um arquivo.

-- Any: um contêiner ou uma folha. Informa se o elemento final no caminho é de algum tipo específico. Retorna TRUE se o elemento for do tipo especificado e FALSE se não for.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-UseTransaction

Inclui o comando na transação ativa. Este parâmetro é válido apenas quando uma transação está em andamento. Para obter mais informações, consulte about_Transactions.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

System.String

Você pode enviar uma cadeia de caracteres que contém um caminho (mas não um caminho literal) para Test-Path.

Saídas

System.Boolean

O cmdlet retorna "True" quando o caminho existe e "False" quando não existe.

Observações

Os cmdlets que contêm o nome Path (os cmdlets Path) manipulam os nomes de caminho e os retornam em um formato conciso que pode ser interpretado por todos os provedores do Windows PowerShell. Eles foram criados para o uso em programas e scripts em que você deseja exibir todo ou parte de um caminho em um determinado formato. Utilize-os como o faria com Dirname, Normpath, Realpath, Join ou outros manipuladores de caminho.

Você pode usar os cmdlets Path com vários provedores, incluindo FileSystem, Registry e Certificate.

O cmdlet Test-Path foi desenvolvido para funcionar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite "Get-PSProvider". Para obter mais informações, consulte about_Providers.

Exemplo 1

C:\PS>test-path -path "C:\Documents and Settings\NicoleH"

Descrição
-----------
Esse comando diz se todos os elementos no caminho existem, ou seja, o diretório C:, o diretório Documents and Settings e o diretório NicoleH. Se faltar algum deles, o cmdlet retornará FALSE. Caso contrário, ele retornará TRUE.





Exemplo 2

C:\PS>test-path -path $profile

C:\PS>test-path -path $profile -IsValid

Descrição
-----------
Esses comandos testam o caminho para o perfil do Windows PowerShell. 

O primeiro comando determina se todos os elementos do caminho existem. O segundo comando determina se a sintaxe do caminho está correta. Nesse caso, o caminho é FALSE, mas a sintaxe é correta (TRUE). Esses comandos usam a variável $profile, a variável automática que aponta para o local do perfil, mesmo se o perfil não existir.

Para obter mais informações sobre variáveis automáticas, consulte about_Automatic_Variables.





Exemplo 3

C:\PS>test-path -path "C:\CAD\Commercial Buildings\*" -exclude *.dwg

Descrição
-----------
Esse comando determina se há algum arquivo no diretório Commercial Buildings que não seja um arquivo .dwg. 

Esse comando usa o parâmetro Path para especificar o caminho. Como ele inclui um espaço, o caminho está entre aspas. O asterisco no final do caminho indica o conteúdo do diretório Commercial Building. (Com caminhos longos, como esse, digite as primeiras letras do caminho e use a tecla TAB para completar o caminho).

O comando usa o parâmetro Exclude para especificar arquivos que serão omitidos da avaliação. 

Nesse caso, como o diretório possui apenas arquivos .dwg, o resultado é FALSE.





Exemplo 4

C:\PS>test-path -path $profile -pathtype leaf

Descrição
-----------
Esse comando determina se o caminho armazenado na variável $profile leva a um diretório ou a um arquivo. Nesse caso, como o perfil do Windows PowerShell é um arquivo .ps1, o cmdlet retorna TRUE.





Exemplo 5

C:\PS>test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell

TRUE

C:\PS> test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell\ExecutionPolicy
FALSE

Descrição
-----------
Esses comandos usam o cmdlet Test-Path com o provedor de Registro do Windows PowerShell. 

O primeiro comando testa se o caminho do Registro até a chave do Registro do Microsoft.PowerShell está correto no sistema. Se o Windows PowerShell estiver instalado corretamente, o cmdlet retornará TRUE.

Test-Path não funciona corretamente com todos os provedores do Windows PowerShell. Por exemplo, você pode usar o Test-Path para testar o caminho para uma chave do Registro, mas se você o usar para testar o caminho de uma entrada do Registro, ele sempre retornará FALSE, mesmo se a entrada estiver presente.





Consulte também

Conceitos

about_Providers
Convert-Path
Split-Path
Resolve-Path
Join-Path