Brazilian Portuguese
No Windows, a alteração de diretórios é uma parte fundamental da gestão de arquivos, mas você se contentaria em escrever caminhos completos para cada diretório que visita? Felizmente, os comandos de mudança de diretório do PowerShell podem facilitar sua vida.
Neste tutorial, você explorará os comandos disponíveis para mudar de diretório no PowerShell, ajudando-o a navegar pelo seu sistema de arquivos sem esforço.
Continue lendo e domine os conceitos básicos da navegação no sistema de arquivos com o PowerShell hoje!
Pré-requisitos
Este tutorial será uma demonstração prática. Para acompanhar, certifique-se de ter um sistema Windows com o PowerShell instalado. Este tutorial utiliza o Windows 10 e PowerShell v7.
Mudando de um Drive para Outro
Cada dispositivo de armazenamento, como um disco rígido ou unidade USB, é atribuído a uma letra de unidade (ou seja, C:, D:, E:, …Z:). Quando você abre uma janela do PowerShell, o prompt está no diretório do seu perfil de usuário no drive atual por padrão.
Suponha que você precise de acesso frequente a arquivos ou pastas armazenados em um drive diferente do que você está usando atualmente. Se for o caso, é necessário alternar de um drive para outro.
Para ver como alternar de um drive para outro:
1. Abra o PowerShell e confirme se o prompt mostra C:\Users\admin. Se for o caso, então você está atualmente no drive C: no diretório do perfil do usuário admin, como mostrado abaixo.

2. Em seguida, abra outra sessão do PowerShell, mas desta vez, como administrador.
Abaixo, o prompt começa em um diretório padrão diferente do que ao iniciar o PowerShell como um usuário regular. Especificamente, o prompt começa no diretório System32 dentro do diretório Windows no drive atual (C:), como mostrado abaixo.
Esse comportamento padrão impede que usuários não administrativos modifiquem acidentalmente arquivos críticos do sistema ou executem ferramentas sensíveis.

3. Execute o comando abaixo para mudar o drive atual para D:
(ou para qualquer drive disponível). Esta sintaxe é uma maneira rápida de navegar entre diferentes drives no PowerShell.
Ao alternar entre drives no PowerShell com este método, o prompt muda para o diretório raiz do novo drive, como no resultado abaixo.
Como você pode ver, independentemente do diretório padrão em que o PowerShell inicia, você sempre pode mudar para outro drive.

4. Agora, execute o comando abaixo para tentar mudar para o diretório D:\Kitty
(ou para qualquer outro subdiretório).
Você recebeu o mesmo erro abaixo? Este erro ocorre porque você não pode alternar para subdiretórios (por exemplo, D:\Kitty) de uma vez por este método.
Salte para a seção seguinte para ver como alternar para subdiretórios.

Navegando no Sistema de Arquivos via o Comando cd
Navegar por vários subdiretórios é uma tarefa comum no PowerShell. Mas há uma maneira rápida de navegar por diferentes subdiretórios? Sim! O comando cd
, abreviação de “change directory”, permite que você mude rapidamente para outro subdiretório, independentemente do seu diretório atual.
No passado, o comando
cd
era usado para navegar entre unidades e diretórios no Prompt de Comando. A Microsoft tornou o comandocd
retrocompatível para que você ainda possa navegar entre diretórios no PowerShell.
Continue lendo e veja como navegar pelo seu sistema de arquivos com o comando cd
.
Movendo para um Diretório em uma Unidade Diferente
Ir para um subdiretório em uma unidade diferente pode parecer um incômodo se você pensar sobre isso. Bem, não há necessidade de pensar demais. Você ficará surpreso com a rapidez com que o comando cd
permite que você vá para outra unidade enquanto entra em um de seus diretórios.
Execute o comando abaixo para navegar até o subdiretório chamado Kitty
na unidade D:*
.

Movendo-se de Um para Muitos Níveis Acima na Hierarquia de Diretórios
Com a gestão do sistema de arquivos, ou ao trabalhar em um projeto, você pode precisar frequentemente subir um ou dois níveis a partir do seu diretório atual. O comando cd suporta a notação ..
que permite alternar efetivamente para o diretório pai do seu diretório atual.
Essa funcionalidade permite que você suba um nível no seu sistema de arquivos sem especificar o caminho completo para o diretório pai.
1. Execute o comando cd
abaixo, acrescente um espaço e a notação ..
, que diz ao PowerShell para subir um nível na hierarquia de diretórios.
O caractere de espaço após o comando
cd
não é necessário, pois o comando funcionará corretamente sem ele. No entanto, adicionar um espaço é uma prática comum para melhor legibilidade e consistência com outros comandos.
No resultado abaixo, você pode ver que o prompt sobe um nível a partir do C:\Users\admin\Documents para o diretório C:\Users\admin. Note que você não precisou especificar o caminho completo para o diretório C:\Users\admin para subir.

2. Em vez de subir um nível, execute o comando a seguir com duas notações ..
, acrescentando uma barra invertida (\
) no final de cada uma. Isso permite que você suba dois níveis na hierarquia de diretórios.
Abaixo, o resultado mostra que você pulou do C:\Users\admin\Documents diretamente para o diretório C:\Users.

3. Por fim, execute o comando abaixo para ir para o diretório raiz do seu drive atual.
Se você se perdeu em seu sistema de arquivos, este comando é útil, pois permite que você pule rapidamente para o diretório raiz. Este comando economiza o incômodo de executar o comando cd ..
várias vezes.

Movendo-se para um Subdiretório Específico
Assim como mover um nível para cima na hierarquia de diretórios, mover-se para um subdiretório específico também é uma tarefa rápida. Como pode haver muitos subdiretórios, a adição de notações como as anteriores (..
e ..\
) não funcionará; você deve especificar o nome do subdiretório.
Execute o comando abaixo para entrar em um dos subdiretórios (\admin
) em seu diretório atual (.
).
Observe abaixo que você economizou tempo e esforço, pois não precisou especificar o caminho completo do diretório C:\Users\admin.

Navegando no Sistema de Arquivos com Cmdlets do PowerShell
Embora o comando cd
funcione sem dúvida no PowerShell, a Microsoft introduziu muitos cmdlets, como Set-Location
, que permitem que você navegue pelo seu sistema de arquivos.
Esses cmdlets fornecem funcionalidades mais robustas do que o comando cd
, que você pode usar para alternar entre unidades, navegar por locais empilhados e percorrer diretórios no histórico de localização.
Fique ligado e veja como os poderosos cmdlets do PowerShell são para navegar pelo seu sistema de arquivos.
Definindo um Local de uma Unidade Diferente
Assim como o comando cd
, o cmdlet Set-Location
permite que você pule de um diretório para outro e navegue diretamente para um de seus diretórios. Mas como você está usando um cmdlet do PowerShell, você deve acrescentar o parâmetro -Path
para definir o caminho do seu local de destino.
O cmdlet Set-Location
define o diretório de trabalho atual para um local especificado. Esse local especificado pode ser um dos seguintes:
- A directory, or subdirectory on the local file system.
- Qualquer outro local suportado por um provedor no PowerShell.
- Ou um local de registro.
Para ver como o cmdlet Set-Location
funciona ao navegar pelo seu sistema de arquivos:
Execute o comando abaixo para navegar até o diretório Kitty
em seu disco D:
especificado no parâmetro -Path
.

Se você se sentir um pouco preguiçoso para digitar o cmdlet completo
Set-Location
, você também pode usar um de seus aliases, comochdir
esl
, para navegar pelo seu sistema de arquivos. Aliases oferecem uma maneira mais conveniente de acessar comandos frequentemente usados.
Agora, execute o comando abaixo para definir o local de trabalho para um local de registro específico. Neste caso, o caminho HKLM:\
(uma abreviação) refere-se à chave HKEY_LOCAL_MACHINE no seu Registro do Windows.
Este comando define a localização de trabalho para a raiz da chave HKEY_LOCAL_MACHINE no registro. Navegar para um registro permite que você acesse e modifique suas subchaves e valores por meio de outros comandos do PowerShell.

Alternando Entre Localizações Empilhadas (Empurrar e Tirar)
Acessar rapidamente localizações empilhadas parece conveniente. Mas é possível? Sim! Os cmdlets Push-Location
e Pop-Location
permitem que você empurre e tire localizações em uma ordem de último a entrar, primeiro a sair (LIFO) de uma pilha nomeada.
Para navegar entre localizações empilhadas, siga estas etapas:
1. Execute o comando Push-Location
abaixo para empurrar sua localização atual para uma pilha chamada Paths
e definir o diretório C:\Program Files\PowerShell\
como o diretório atual.

2. Em seguida, execute o comando abaixo para empurrar sua localização atual (C:\Program Files\PowerShell\) para o topo da mesma pilha Paths
.

3. Execute cada comando abaixo para definir Paths
como a pilha padrão e visualizar (Get-Location
) as localizações empilhadas.
Abaixo, você pode ver que atualmente tem duas localizações empilhadas, onde a última localização que você adicionou está no topo.

4. Agora, execute o seguinte comando Pop-Location
duas vezes para retirar a localização empilhada do topo da pilha padrão, que atualmente é a pilha de caminhos.

Observe que retirar a localização da pilha remove a localização da pilha. O erro abaixo indica que você retirou todas as localizações empilhadas da pilha padrão.

Navegando para um Diretório Armazenado em uma Variável
Você já passou por diferentes maneiras de navegar por diretórios no seu sistema de arquivos. Mas e se você precisar navegar para uma localização específica com frequência? Digitar caminhos completos várias vezes ou navegar pela história de localizações pode ser tedioso. Por que não armazenar o caminho completo de um diretório em uma variável?
Com uma variável declarada, você pode navegar para o diretório desejado sem precisar especificar o caminho de memória.
1. Execute os comandos abaixo para armazenar o diretório C:\Program Files\PowerShell\
na variável $psh
, e defina essa localização ($psh
) como o diretório atual.
A saída abaixo confirma a alteração de diretório bem-sucedida usando uma variável. Independentemente do seu diretório atual, você pode navegar rapidamente para o diretório C:\Program Files\PowerShell\ via a variável $psh
.
Mas note que este método só funciona para a sessão atual do PowerShell, a menos que você persista a variável, como demonstrado na etapa a seguir.

2. Em seguida, execute os comandos abaixo, que não fornecem saída, mas persistem a variável ev_psh
como uma variável de ambiente (SetEnvironmentVariable
) com o valor do caminho completo do diretório.
3. Por fim, execute o comando abaixo para definir o valor da variável de ambiente ev_psh
como o diretório atual. Certifique-se de estar em um diretório diferente do que está em sua variável ev_psh
.

Ciclismo Através do Histórico de Localizações do PowerShell
Outra maneira rápida de percorrer diretórios no PowerShell é usando o histórico de localizações. O parâmetro -Path
informa ao cmdlet Set-Location
para navegar para outro diretório do histórico de localizações (anterior e seguinte), dependendo do valor especificado (-
ou +
).
Para percorrer diretórios no histórico de localizações do PowerShell:
Execute os seguintes comandos para definir as localizações do histórico como o diretório atual. O caractere +
avança no histórico de localizações, enquanto o caractere -
retrocede.

Conclusão
A navegação do sistema de arquivos pode ser complicada quando suas opções são limitadas. Mas com os comandos de mudança de diretório do PowerShell, como Set-Location
, você tem muitas opções. Como você deseja navegar pelo seu sistema de arquivos de forma mais eficiente é totalmente com você.
Além disso, dominar o uso de Push-Location
e Pop-Location
para salvar e lembrar localizações recentes é uma habilidade valiosa.
Essas técnicas permitem que você se mova rapidamente e sem problemas através de diretórios e locais no PowerShell. Mas para melhorar ainda mais, por que não considerar aprender sobre comandos adicionais, como Get-ChildItem
, que podem economizar muito tempo em suas tarefas diárias?
Source:
https://adamtheautomator.com/powershell-change-directory/