Changer le répertoire de travail dans PowerShell
De nombreuses commandes d’invite de commande (CMD) standard fonctionnent dans l’environnement Windows PowerShell. L’environnement PowerShell transmet ces commandes depuis les commandes les plus élémentaires telles que ping
jusqu’aux commandes les plus utilisées telles que ipconfig
de l’environnement hérité en utilisant des alias.
Un exemple de commande CMD qui fonctionne toujours avec Windows PowerShell est la commande de changement de répertoire ou cd
et chdir
.
Bien que nous puissions utiliser les anciennes commandes cd
et chdir
dans Windows PowerShell, il est préférable d’utiliser son cmdlet PowerShell Set-Location
dans des situations spécifiques pour une construction de code appropriée et plus propre.
Utilisez la cmdlet Set-Location
pour modifier le répertoire de travail dans PowerShell
la cmdlet Set-Location
définit de la même manière le répertoire de travail à un emplacement spécifié, comme ses homologues hérités cd
et chdir
. La légère différence entre cette cmdlet et les commandes héritées est que la cmdlet Set-Location modifiera à la fois le lecteur et le répertoire de travail simultanément, ce que CMD.EXE ne peut pas faire.
Si nous devons changer notre répertoire de travail vers un autre lecteur dans l’invite de commande, nous devons toujours saisir d’abord <drive letter>:
, puis lancer nos commandes cd
et chdir
pour modifier le chemin du répertoire de travail.
Invite de commande :
C:\> cd C:\Temp
C:\Temp> cd D:\Docs
C:\Temp>
#To change the working drive, type the drive letter
C:\Temp> D:
D:\>
PowerShell :
PS C:\> Set-Location C:\Temp
PS C:\Temp> Set-Location D:\Docs
PS D:\Docs>
la cmdlet Set-Location
se différencie également de son ancienne commande en raison de paramètres supplémentaires.
Voici quelques exemples ci-dessous.
Set-Location -Path C:\Temp
Sur l’extrait d’exemple ci-dessus, le paramètre -Path
spécifiera le nouveau répertoire de travail de notre environnement de script. Cependant, si votre chemin comporte des espaces, n’oubliez pas de les entourer de guillemets simples (''
) ou doubles (""
).
Set-Location -Path "C:\Temp\Temporary Documents"
Un autre paramètre utile à l’intérieur de la cmdlet Set-Location
est le paramètre -PassThru
. Ce paramètre renverra le nouveau répertoire de travail que nous pouvons utiliser pour stocker la valeur renvoyée dans une variable.
Exemple de code :
$newDir = Set-Location -Path C:\Temp -PassThru
Write-Output $newDir.path
Production :
C:\Temp
Vous ne pouvez également accéder à la liste complète des propriétés de la cmdlet Set-Location
que si vous disposez du paramètre -PassThru
.
Exemple de code :
Set-Location -Path G: -PassThru | fl *
Production :
Drive : G
Provider : Microsoft.PowerShell.Core\FileSystem
ProviderPath : G:\
Path : G:\
Enfin, outre cd
et chdir
, Windows PowerShell utilise également sl
comme autre alias pour Set-Location
. Vous pouvez l’utiliser pour une approche de script plus rapide et plus fluide.
sl -Path C:\Temp
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn