New PSDrive - PowerShell
Overview
New-PSDrive creates a PowerShell drive that provides convenient access to a file system, registry, or other data source. It simplifies working with external resources by mapping them to a logical drive letter, enabling navigation and manipulation using standard PowerShell commands.
Syntax
New-PSDrive [-Name] <String> [-PSProvider] <String> [-Root] <String> [-Credential <PSCredential>]
[-Persist] [-Scope] <DriveScope> [-Verbose] [-WhatIf] [-Confirm]
Options/Flags
- -Name: Specifies the name of the new drive.
- -PSProvider: Indicates the provider to use for the drive. Common providers include “FileSystem”, “Registry”, and “Certificate”.
- -Root: Sets the root path or location for the drive.
- -Credential: Provides credentials for accessing the drive if necessary.
- -Persist: Makes the drive persistent across PowerShell sessions.
- -Scope: Defines the scope of the drive (“Global”, “Machine”, or “Session”).
- -Verbose: Enables detailed output.
- -WhatIf: Shows what the command would do without executing it.
- -Confirm: Prompts for confirmation before executing the command.
Examples
Create a drive for a local folder:
New-PSDrive -Name MyFolder -PSProvider FileSystem -Root "C:\Users\John\Documents"
Map a drive to the system registry:
New-PSDrive -Name HKLM -PSProvider Registry -Root "HKLM:\Software"
Create a persistent drive with credentials:
$cred = Get-Credential
New-PSDrive -Name SecureFolder -PSProvider FileSystem -Root "C:\Confidential" -Credential $cred -Persist
Common Issues
- Drive already exists: If a drive with the same name already exists, the command will fail. Use Get-PSDrive to check for existing drives.
- Invalid path: Ensure the path specified in -Root is valid and accessible.
- Access denied: Check if the credentials used have the necessary permissions to access the resource.
Integration
- Use New-PSDrive with Get-Childitem to list the contents of a drive.
- Combine with Set-Location to navigate to the drive.
- Create scripts that automate tasks involving various data sources by leveraging different drive providers.
Related Commands
- Get-PSDrive: Retrieves information about PowerShell drives.
- Remove-PSDrive: Removes PowerShell drives.
- Set-PSDrive: Modifies properties of existing drives.
- Microsoft Docs: New-PSDrive