Compartilhar via


about_Path_Syntax

Descrição breve

Descreve os formatos de caminho completo e relativo no PowerShell.

Descrição longa

Todos os itens em um armazenamento de dados acessíveis por meio de um provedor do PowerShell podem ser identificados exclusivamente por seus nomes de caminho. Um caminho é uma combinação do nome do item, do contêiner e dos subcontêns nos quais o item está localizado e da unidade do PowerShell pela qual os contêineres são acessados.

No PowerShell, os nomes de caminho podem ser um dos dois tipos: totalmente qualificados e relativos. Um caminho totalmente qualificado consiste em todos os elementos que compõem um caminho. A seguinte sintaxe mostra os elementos em um nome de caminho totalmente qualificado:

[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>

O <provider> espaço reservado refere-se ao provedor do PowerShell por meio do qual você acessa o armazenamento de dados. Por exemplo, o provedor FileSystem permite que você acesse os arquivos e diretórios em seu computador. Esse elemento da sintaxe é opcional e nunca é necessário porque os nomes de unidade são exclusivos em todos os provedores.

O <drive> espaço reservado refere-se à unidade do PowerShell compatível com um provedor específico do PowerShell. No caso do provedor FileSystem, as unidades do PowerShell são mapeadas para as unidades do Windows configuradas em seu sistema. Por exemplo, se o sistema incluir uma A: unidade e uma C: unidade, o provedor FileSystem criará as mesmas unidades no PowerShell.

Depois de especificar a unidade, você deve especificar todos os contêineres e subcontêns que contenham o item. Os contêineres devem ser especificados na ordem hierárquica na qual eles existem no armazenamento de dados. Em outras palavras, você deve começar com o contêiner pai e, em seguida, o contêiner filho nesse contêiner pai, repetindo o padrão para cada contêiner filho. Além disso, cada contêiner deve ser precedido por uma barra invertida.

Observação

O PowerShell permite que você use barra invertida ou barra invertida para compatibilidade com o PowerShell em outras plataformas. Isso funciona para comandos do PowerShell, mas pode não funcionar quando usado com aplicativos nativos que esperam apenas o separador de diretório nativo. Use [System.IO.Path]::DirectorySeparatorChar para localizar o caractere usado para sua plataforma.

Depois que o contêiner e os subcontêns forem especificados, você deverá fornecer o nome do item, precedido por uma barra invertida. Por exemplo, o nome do caminho totalmente qualificado para o Shell.dll arquivo no diretório é o C:\Windows\System32 seguinte:

C:\Windows\System32\Shell.dll

Nesse caso, a unidade pela qual os contêineres são acessados é a C: unidade, o contêiner de nível superior é Windows, o subcontêiner é System32e o item é Shell.dll.

Em algumas situações, você não precisa especificar um caminho totalmente qualificado e, em vez disso, pode usar um caminho relativo. O PowerShell permite que você identifique um item com base em sua localização em relação ao local de trabalho atual.

O PowerShell usa as sequências de caracteres a seguir para especificar caminhos relativos.

  • (.) – Local atual
  • (..) – Pai do local atual
  • (\) – Raiz do local atual

Os exemplos a seguir são baseados no diretório de trabalho atual que está sendo definido como C:\Windows.

  • O caminho .\System relativo é resolvido como C:\Windows\System
  • O caminho ..\Program Files relativo é resolvido como C:\Program Files
  • O caminho \Program Files relativo é resolvido como C:\Program Files
  • O caminho System relativo é resolvido como C:\Windows\System

Ao usar um caminho em um comando, você pode usar um caminho totalmente qualificado ou um relativo. Por exemplo, suponha que seu diretório de trabalho atual seja C:\Windows. O comando a seguir Get-ChildItem recupera todos os itens no C:\TechDocs diretório :

Get-ChildItem \TechDocs

A barra invertida indica que a raiz da unidade do local de trabalho atual deve ser usada. Como o diretório de trabalho é C:\Windows, a raiz da unidade é a C: unidade. Como o TechDocs diretório está localizado fora da raiz, você precisa especificar apenas a barra invertida.

Você obtém os mesmos resultados usando o caminho totalmente qualificado:

Get-ChildItem C:\TechDocs

Independentemente de você usar um caminho totalmente qualificado ou um nome de caminho relativo, um caminho é importante não apenas porque localiza um item, mas também porque identifica exclusivamente o item, mesmo que esse item compartilhe o mesmo nome que outro item em um contêiner diferente.

Por exemplo, suponha que você tenha dois arquivos que são cada um chamados Results.txt. O primeiro arquivo está em um diretório chamado C:\TechDocs\Jane o segundo está em um diretório chamado C:\TechDocs\Feb. O caminho para o primeiro arquivo (C:\TechDocs\Jan\Results.txt) e o caminho para o segundo arquivo (C:\TechDocs\Feb\Results.txt) permitem distinguir claramente entre os dois arquivos.

Confira também