Existe uma maneira de alterar o local padrão do PowerShell?
Como você define o diretório de trabalho padrão do PowerShell?
windows
powershell
Youbloodywombat
fonte
fonte
Respostas:
Você pode especificar o diretório a ser aberto ao iniciar o PowerShell:
Basta usá-lo em seu atalho.
Ou use um perfil para definir um diretório inicial.
fonte
pwsh.exe -WorkingDirectory C:\YourLocation\Goes\Here
Crie um perfil do PowerShell da seguinte maneira.
Execute o PowerShell como administrador e execute o seguinte comando:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Isso permitirá que o PowerShell execute scripts locais e scripts baixados da Internet que foram assinados. Leia mais sobre este comando na documentação .
Em sua
Documents
pasta, encontre uma pasta chamadaWindowsPowerShell
PowerShell clássico ouPowerShell
PowerShell Core mais recente. Se não existir, tudo bem; apenas crie.profile.ps1
naWindowsPowerShell
pasta (ouPowerShell
para PowerShell Core).Abra
profile.ps1
e adicione o seguinte comando para definir seu diretório de trabalho padrão:Abra uma nova janela do PowerShell ... as alterações devem ter entrado em vigor.
fonte
powershell -File "myscript.ps1"
powershel -NoProfile -File "myscript.ps1"
Eu tentei as respostas acima no Windows Server 2016 sem sucesso.
Mas descobri que essa abordagem (deve ser a mesma para o Windows 10) funcionando para mim.
Feito!
Na mesma caixa de diálogo Propriedades, você também pode alterar muitas outras configurações, como fontes, cores, tamanhos e na guia Atalho através do botão Advanced. Você pode selecionar se a sessão do PowerShell deve ser executada com privilégios de administrador.
fonte
Run as administrator
no.lnk
menu avançado. A solução parece estar aqui stackoverflow.com/questions/31622469/…Run as aministrator
caixa de seleção para frente e para trás.Uma maneira mais fácil de definir o diretório padrão é a seguinte:
Clique com o botão direito do mouse no ícone do Windows PowerShell em Iniciar e, novamente, clique com o botão direito do mouse em Windows PowerShell e selecione Propriedades (não Executar como Administrador e não Windows PowerShell ISE )
fonte
Colocar
Set-Location
em seu perfil mudará incondicionalmente o diretório de trabalho atual, o que pode ter consequências indesejadas em relação ao diretório de trabalho para scripts que você executa por meio de "executar com PowerShell".Uma solução alternativa é alterar o diretório de trabalho dos
.lnk
arquivos para PowerShell geralmente encontrado em%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Windows PowerShell
. Clique com o botão direito em um link e altere o diretório de trabalho%HOMEDRIVE%%HOMEPATH%
para o diretório desejado.fonte
Run as administrator
no.lnk
menu avançado. A solução parece estar aqui stackoverflow.com/questions/31622469/…-NoProfile
opção comopowershell -NoProfile -File "myscript.ps1"
Digite isso no PowerShell:
Ele cria um arquivo .ps1 na pasta PowerShell. Abra-o e edite-o como:
Feito
Consulte este link. Funciona bem.
Alterar diretório inicial do PowerShell
fonte
Em vez de alterar incondicionalmente o diretório de trabalho conforme mencionado nas respostas anteriores, você pode escrever uma função simples no perfil do PowerShell para usar
Set-Location
para alterar rapidamente o diretório de trabalho sempre que necessário.Verifique a resposta de Jeremy Danyow para criar / modificar um perfil do PowerShell.
Adicione função (ões) ao seu perfil do PowerShell:
Basta alterar o nome da função e o diretório apontado. O uso de aspas no caminho é obrigatório se ele contiver espaços. Tento manter o prefixo
goto_
, pois ajuda a lembrar os nomes das funções.Você pode começar a digitar
goto_
e pressionar TAB para percorrer todas as funções adicionadas (lembre-se de iniciar uma nova janela do PowerShell após adicionar / modificar funções).fonte
Usando apenas a linha de comando, se já existir um arquivo, ele será anexado a ele:
fonte
Com isso, parece haver alguma confusão sobre o "diretório de trabalho" e a "localização" do PowerShell. O que a maioria das pessoas aqui está fazendo e dizendo para fazer é mudar a "localização" do PowerShell. O "diretório de trabalho" é realmente diferente. Aqui está um artigo que explica isso.
Para aqueles que não querem ler o artigo: Abra o PowerShell e use o que outros disseram para fazer
Set-Location "C:\some\directory"
. Observe que seu "diretório de trabalho" ainda está onde seu PowerShell foi aberto. De qualquer"~"
ou"%SYSTEMROOT%\system32"
, dependendo se você correu como administrador ou não. Para verificar o diretório de trabalho, use[Environment]::CurrentDirectory
.Nota: no artigo o autor diz para verificar o "diretório de trabalho" usando este comando:
Não tenho certeza se isso funciona com versões anteriores do PowerShell, mas com o PowerShell 5 (e posterior) você tem que usar
[Environment]::CurrentDirectory
.fonte
Faça desta a primeira linha em seu Profile.ps1 e PowerShell Core (pwsh) será aberto no diretório em que você está trabalhando atualmente:
set-location (get-location) .path
fonte
Write-Output "Set-Location C: \" >> $ profile
fonte
Esta solução define a pasta de trabalho atual para o local onde o script está localizado. Certifique-se de colocar no início do seu script, ou pelo menos antes de tentar usar o comando baseado no caminho da localização.
fonte