Cambia directory in PowerShell


99

Il mio prompt di PowerShell punta attualmente alla mia unità C ( PS C:\>). Come cambio directory in una cartella sulla mia unità Q ( PS Q:\>)?

Il nome della cartella sulla mia unità Q è "My Test Folder".


semplice come questocd -Path Q:/
Omer

Risposte:


178

A differenza di CMD.EXE CHDIRo del CDcomando, il Set-Locationcmdlet di PowerShell cambierà unità e directory, entrambe. Get-Help Set-Location -Fullti fornirà informazioni più dettagliate su Set-Location, ma l'utilizzo di base sarebbe

PS C:\> Set-Location -Path Q:\MyDir

PS Q:\MyDir> 

Per impostazione predefinita in PowerShell CDe CHDIRsono alias per Set-Location.

( Asad mi ha ricordato nei commenti che se il percorso contiene spazi, deve essere racchiuso tra virgolette.)


11
Devi racchiudere il percorso tra "" altrimenti ti darà un errore. Il comando sarà simile a questo Set-Location "Q: \ My Test Folder"
Asad

3
@ Asad - Buon punto, e uno che avrei dovuto includere originariamente, anche se la citazione è necessaria solo se il percorso contiene spazi.
Jeff Zeitlin

23

Per passare direttamente a quella cartella, puoi utilizzare il Set-Locationcmdlet o l' cdalias:

Set-Location "Q:\My Test Folder"

17

Più risposte pubblicate qui, ma probabilmente questo può aiutare chi sta usando PowerShell di recente

inserisci qui la descrizione dell'immagine

COSÌ, se c'è dello spazio nel percorso della directory, non dimenticare di aggiungere virgolette doppie "".


6
Anche le virgolette singole funzioneranno, ad esempioSet-Location 'C:\Path With Spaces'
Jeff Zeitlin

1
double inverted commas🤦‍♂️
OwnageIsMagic

9

Puoi semplicemente digitare Q:e questo dovrebbe risolvere il tuo problema.


Non sembra funzionare. Lo sto facendo correttamente? PS C: \> Q:
SoConfused

Sei sicuro che sia lì? Immagino che se è Q: / drive che è una sorta di supporto rimovibile, forse è qualcosa di semplice come collegarlo.
Cordo van Savior

Il presupposto è che l'unità Q in effetti esista. In caso contrario, PowerShell genererà un errore che specifica che l'unità non esiste.
Jeff Zeitlin

Oh, sì, colpa mia.
Cordo van Savior

1
Adoro le soluzioni semplici :)
Heike

6

Set-Location -Path 'Q:\MyDir'In PowerShell cd=Set-Location


6
Questo deve essere uno dei migliori motivi al mondo per non usare Powershell.
not2qubit

Poiché gli alias possono essere rimossi e ridefiniti, userò sempre il cmdlet espanso nelle risposte qui: non posso presumere che solo perché non ho rimosso o modificato l' cdalias, nemmeno tu.
Jeff Zeitlin

0

Se la cartella all'interno di un'unità contiene spazi in Power Shell, puoi semplicemente digitare il comando, quindi il nome dell'unità e il nome della cartella all'interno di virgolette singole (''):

Set-Location -Path 'E:\FOLDER NAME'

Lo screenshot è allegato qui

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.