C'è un modo per modificare la posizione predefinita di PowerShell?Come impostare la directory predefinita di PowerShell?
Come si imposta la directory di lavoro predefinita di Powershell?
C'è un modo per modificare la posizione predefinita di PowerShell?Come impostare la directory predefinita di PowerShell?
Come si imposta la directory di lavoro predefinita di Powershell?
È possibile specificare la directory da aprire quando si avvia PowerShell:
powershell.exe -NoExit -command "& {Set-Location $env:systemroot}"
basta usare nel vostro collegamento.
Oppure utilizzare profile per impostare una directory di avvio.
Documents
, trovare la directory denominata WindowsPowerShell
. Se non esiste, va bene, basta crearlo.profile.ps1
nella cartella WindowsPowerShell
.Aprire profile.ps1
e aggiungere il seguente comando per impostare la directory di lavoro predefinita:
Set-Location C:\my\default\working\directory
Aprire una nuova finestra di PowerShell ... i cambiamenti avrebbero dovuto avuto effetto.
Ho provato questo, ma ottenere "profile.ps1 non può essere caricato perché l'esecuzione di script è disabilitato". Esiste un modo "sicuro" per abilitare gli script sicuri? –
Eseguire: "Set-ExecutionPolicy -ExecutionPolicy RemoteSigned" È possibile leggere a questo proposito qui: https://technet.microsoft.com/en-us/library/ee176961.aspx Non consente di eseguire script scaricati da Internet a meno che non vengano eseguiti provengono da una fonte attendibile. – LLL
Questo è un pessimo modo di farlo perché se si dispone di uno script di build per esempio (come lo script di Visual Studio Build) e si desidera eseguire un comando ps, la directory di lavoro del comando sarà impostata su quella posizione, quindi sarà in pratica infrangono tutti gli script usando powershell come 'powershell -File" myscript.ps1 "' – Santhos
Mettere Set-Location
nel tuo profilo sarà incondizionatamente cambiare la directory di lavoro corrente, che potrebbe avere conseguenze indesiderate per quanto riguarda la directory di lavoro per gli script che si esegue tramite "correre con PowerShell".
Una soluzione alternativa consiste nel cambiare la directory di lavoro per i file .lnk
in PowerShell che si trova in genere in %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Windows PowerShell
. Fare clic con il pulsante destro del mouse su un collegamento e modificare la directory di lavoro da %HOMEDRIVE%%HOMEPATH%
nella directory desiderata.
Cambiare la directory di lavoro non sembra funzionare quando si seleziona 'Esegui come amministratore' nel menu avanzato' .lnk'. La soluzione sembra essere qui http://stackoverflow.com/questions/31622469/run-as-administrator-changes-batch-file-current-directory-sometimes – Santhos
Questa è la soluzione migliore (almeno per me). –
Ecco perché gli script dovrebbero usare l'opzione '-NoProfile' come ' powershell -NoProfile -File "myscript.ps1" ' – Santhos
Avevo provato le risposte sopra in Server 2016 senza successo.
Ma ho trovato questo approccio (dovrebbe essere lo stesso per Windows 10) che funziona per me.
Fatto!
Nella stessa finestra di dialogo delle proprietà è anche possibile modificare molte altre impostazioni, come font, colori, dimensioni e nella scheda Shortcut ci tramite pulsante Avanzate è possibile selezionare se che PowerShell deve essere eseguito con privilegi di amministratore.
Cambiare la directory di lavoro non sembra funzionare quando si seleziona' Esegui come amministratore' in '. lnk' menu avanzato. La soluzione sembra essere qui http://stackoverflow.com/questions/31622469/run-as-administrator-changes-batch-file-current-directory-sometimes – Santhos
Questo è strano, perché funziona qui. Appena testato con la modifica della directory e cambiando la casella di controllo "Esegui come amministratore" avanti e indietro. – neongrau
Funziona un fascino. Grazie. – Yasser
anziché modificare incondizionatamente la directory di lavoro nei metodi precedenti, come indicato da Leonard Brünings, è possibile scrivere un semplice function
nel profilo PowerShell per utilizzare set-location
per una rapida modifica della directory di lavoro ogni volta che è necessario.
se non sai come creare/modificare un profilo di PowerShell fai riferimento alle risposte sopra o cerca 'come modificare il profilo di PowerShell' e impara.
aggiungere questa funzione al tuo profilo PowerShell:
function 'goto_name' {set-location 'your_directory'}
nulla all'interno '' può essere sostituito da proprio nome/directory. ma prova a mantenere il prefisso goto_
per il collegamento della tua directory, aiuta a ricordare il nome per andare al percorso.
Ricordare che i nomi delle sottocartelle nel percorso della directory non possono contenere spazi !, quindi fare attenzione durante la creazione di nuove sottocartelle.
ora è possibile digitare semplicemente il comando > 'goto_name'
e le modifiche alla directory richiesta.
è possibile definire il numero di funzioni che si desidera modificare rapidamente in diverse directory, ricordarsi di definirne una per tornare alla directory predefinita!
Usando solo da riga di comando, se il file esiste già si aggiungerà ad esso
$(if (-Not (Test-Path ~\Documents\WindowsPowerShell\)){ mkdir ~\Documents\WindowsPowerShell\}) ; echo "Set-Location c:\THELOCATIONYOUWANT" >> ~\Documents\WindowsPowerShell\profile.ps1
Ecco un modo si può fare tramite la modifica del collegamento: http://stackoverflow.com/questions/18726981/how- to-change-git-shells-start-directory-in-windows-7/# answer-31468502 –
@BlunderingPhilosopher Questo è per git shell ..? –
@VivekChavda Yep –