New-PSDrive
Создает временные и постоянные сопоставленные сетевые диски.
Синтаксис
New-PSDrive
[-Name] <String>
[-PSProvider] <String>
[-Root] <String>
[-Description <String>]
[-Scope <String>]
[-Persist]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Описание
Командлет New-PSDrive
создает временные и постоянные диски, сопоставленные или связанные с расположением в хранилище данных, например сетевой диск, каталог на локальном компьютере или раздел реестра, а также постоянные сетевые диски, сопоставленные с расположением файловой системы на удаленном компьютере.
Временные диски существуют только в текущем сеансе PowerShell и в сеансах, создаваемых в текущем сеансе.
Они могут иметь любое имя, допустимое в PowerShell, и может быть сопоставлено с любым локальным или удаленным ресурсом.
Для доступа к данным в связанном хранилище данных можно использовать временные диски PowerShell, как и любые сопоставленные сетевые диски.
Вы можете изменить расположения на диске с помощью Set-Location
, cdили chdir, а также получить доступ к содержимому диска с помощью Get-Item
, Get-ChildItem
или dir.
Тем не менее, поскольку временные диски известны только в PowerShell, их нельзя получить с помощью проводника, инструментария управления Windows (WMI), объектной модели компонента (COM) или Microsoft .NET Framework или с помощью таких средств, как Net Use.
Следующие функции добавляются в New-PSDrive
в Windows PowerShell 3.0:
- Сопоставленные сетевые диски.
Для создания сопоставленных сетевых дисков Windows можно использовать параметр сохранить
New-PSDrive
. В отличие от временных дисков PowerShell, сопоставленные с Windows сетевые диски не зависят от сеанса. Они сохраняются в Windows и могут управляться с помощью стандартных средств Windows, таких как проводник и net Use. Сопоставленные сетевые диски должны иметь имя буквы диска и подключаться к удаленному расположению файловой системы. Если команда находится в пределах локальной области (без dot-sourcing), параметр "Сохранить" не сохраняет создание PSDrive за пределами области выполнения команды. Если вы выполняетеNew-PSDrive
внутри скрипта, и требуется, чтобы диск сохранялось на неопределенный срок, необходимо использовать сценарий dot-source. Чтобы получить наилучшие результаты, чтобы принудительно сохранить новый диск на неопределенный срок, добавьте параметр областив команду и задайте для нее значение Global. - Внешние диски. При подключении внешнего диска к компьютеру PowerShell автоматически добавляет PSDrive в файловую систему, представляющую новый диск. Не нужно перезапустить PowerShell. Аналогичным образом, если внешний диск отключен от компьютера, PowerShell автоматически удаляет PSDrive, представляющий удаленный диск.
- Учетные данные для UNC-путей.
Если значение параметра корневой
Примеры
Пример 1. Создание диска, сопоставленного с сетевым ресурсом
New-PSDrive -Name "P" -PSProvider "FileSystem" -Root "\\Server01\Public"
Name Provider Root
---- -------- ----
P FileSystem \\Server01\Public
Эта команда создает временный диск PowerShell с именем P: сопоставлен с общей папкой \\Server01\Public network share.
Он использует параметр Name для указания имени диска, параметра PSProvider для указания поставщика файловой системы PowerShell и параметра root, чтобы указать сетевую папку.
После завершения команды содержимое общей папки \\Server01\Public отображается на диске P: .
Чтобы просмотреть их, введите: dir P:
.
Пример 2. Создание временного диска
New-PSDrive -Name MyDocs -PSProvider FileSystem -Root "C:\Documents and Settings\User01\My Documents" -Description "Maps to my My Documents folder."
Name Provider Root
---- -------- ----
MyDocs FileSystem C:\Documents and Settings\User01\My Documents
Эта команда создает временный диск PowerShell, предоставляющий быстрый доступ к локальному каталогу. Он создает диск MyDocs: сопоставлен с каталогом "C:\Documents and Settings\User01\My Documents" на локальном компьютере.
Он использует имени
По завершении команды содержимое папки "Мои документы" отображается на диске MyDocs:
.
Чтобы просмотреть их, введите: dir MyDocs:
.
Пример 3. Создание диска для раздела реестра
New-PSDrive -Name "MyCompany" -PSProvider "Registry" -Root "HKLM:\Software\MyCompany"
Name Provider Root
---- -------- ----
MyCompany Registry HKEY_LOCAL_MACHINE\Software\MyCo...
Эта команда создает временный диск PowerShell, предоставляющий быстрый доступ к часто проверяемого раздела реестра.
Он создает диск с именем MyCompany, сопоставленный с разделом реестра HKLM\Software\MyCompany
.
Он использует name для указания имени диска, PSProvider для указания поставщика реестра PowerShell и корневого для указания раздела реестра.
После завершения команды содержимое ключа MyCompany отображается на диске MyCompany:
.
Чтобы просмотреть их, введите: dir MyCompany:
.
Пример 4. Создание сохраненного сопоставленного сетевого диска
New-PSDrive -Name "S" -Root "\\Server01\Scripts" -Persist -PSProvider "FileSystem"
Net Use
Status Local Remote Network
---------------------------------------------------------
OK S: \\Server01\Scripts Microsoft Windows Network
Эта команда создает сопоставленный сетевой диск "S" на локальном компьютере. Диск "S" сопоставляется с сетевой папкой \\Server01\Scripts.
Команда использует New-PSDrive
для создания сопоставленного сетевого диска.
Он использует сохранить для создания сопоставленного сетевого диска Windows, сохраненного на локальном компьютере.
Команда использует name, чтобы указать имя буквы, которое Windows принимает и корневой, чтобы указать расположение на удаленном компьютере. Он использует PSProvider для указания поставщика FileSystem.
Полученный диск можно просмотреть в других сеансах PowerShell на локальном компьютере, в проводнике Windows и других средствах, таких как Net Use.
Пример 5. Создание постоянных и временных дисков
# Create a temporary PowerShell drive called PSDrive: that is mapped to the \\Server01\Public network share.
New-PSDrive -Name "PSDrive" -PSProvider "FileSystem" -Root "\\Server01\Public"
# Use the *Persist* parameter of **New-PSDrive** to create the X: mapped network drive, which is also mapped to the \\Server01\Public network share.
New-PSDrive -Persist -Name "X" -PSProvider "FileSystem" -Root "\\Server01\Public"
# Now, you can use the **Get-PSDrive** drive cmdlet to examine the two drives. The drives appear to be the same, although the network share name appears only in the root of the PSDrive: drive.
Get-PSDrive -Name "PSDrive", "X"
Name Provider Root
---- -------- ----
PsDrive FileSystem \\Server01\public
X FileSystem X:\
# Get-Member cmdlet shows that the drives have the same object type, System.Management.Automation.PSDriveInfo.
Get-PSDrive "PSDrive", "x" | Get-Member
TypeName: System.Management.Automation.PSDriveInfo
Name MemberType Definition
---- ---------- ----------
CompareTo Method System.Int32 CompareTo(PSDriveInfo drive),
Equals Method System.Boolean Equals(Object obj),
GetHashCode Method System.Int32 GetHashCode()
...
# Net Use and Get-WmiObject for the Win32_LogicalDisk class, and Win32_NetworkConnection class find only the persistent X: drive.
# PowerShell temporary drives are known only to PowerShell.
Net Use
Get-WmiObject Win32_LogicalDisk | Format-Table -Property DeviceID
Get-WmiObject Win32_NetworkConnection
Status Local Remote Network
--------------------------------------------------------
OK X: \\contoso-pc\data Microsoft Windows Network
deviceid
--------
C:
D:
X:
LocalName RemoteName ConnectionState Status
--------- ---------- --------------- ------
X: \\products\public Disconnected Unavailable
В этом примере показано различие между постоянным сопоставленным сетевым диском и временным диском PowerShell, сопоставленным с той же сетевой общей папкой.
Если закрыть сеанс PowerShell, а затем открыть новый, psDrive: диск исчез, а X:
диск сохраняется. Поэтому при принятии решения о том, какой метод следует использовать для сопоставления сетевых дисков, рассмотрите, как будет использоваться диск, должен ли он быть постоянным и должен ли диск быть видимым для других функций Windows.
Параметры
-Confirm
Запрашивает подтверждение перед запуском командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, например объект, созданный командлетом Get-Credential
.
При вводе имени пользователя этот командлет запрашивает пароль.
Начиная с Windows PowerShell 3.0, если значение параметра корневого
Тип: | PSCredential |
Position: | Named |
Default value: | Current user |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Description
Указывает краткое описание текста диска. Введите любую строку.
Чтобы просмотреть описания всех дисков в сеансе, введите Get-PSDrive | Format-Table Name, Description
.
Чтобы просмотреть описание определенных дисков, введите (Get-PSDrive \<DriveName\>).Description
.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Name
Задает имя нового диска. Для постоянных сопоставленных сетевых дисков введите букву диска. Для временных дисков PowerShell введите любую допустимую строку; Вы не ограничены буквами диска.
Тип: | String |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Persist
Указывает, что этот командлет создает сопоставленный сетевой диск Windows. Сопоставленные сетевые диски сохраняются в Windows на локальном компьютере. Они являются постоянными, а не конкретными сеансами, и их можно просматривать и управлять ими в проводнике и других средствах.
При локальной области команды, то есть без dot-sourcing параметр "Сохранить" не сохраняет создание PSDrive за пределами области выполнения команды.
Если вы запускаете New-PSDrive
внутри скрипта, и вы хотите, чтобы новый диск сохранялось на неопределенный срок, необходимо использовать сценарий dot-source.
Чтобы получить наилучшие результаты, чтобы принудительно сохранить новый диск, укажите global в качестве значения параметра области
Имя диска должно быть буквой, например "D" или "E".
Значение параметра Root должно быть UNC-путем другого компьютера.
Значение параметра PSProvider
Чтобы отключить сопоставленный сетевой диск Windows, используйте командлет Remove-PSDrive
.
При отключении подключенного сетевого диска Windows сопоставление окончательно удаляется с компьютера, а не только из текущего сеанса.
Сопоставленные сетевые диски относятся к учетной записи пользователя. Сопоставленные диски, созданные в сеансах с повышенными привилегиями или сеансах с использованием учетных данных другого пользователя, не отображаются в сеансах, запущенных с использованием различных учетных данных.
Тип: | SwitchParameter |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-PSProvider
Указывает поставщик PowerShell, поддерживающий диски такого типа.
Например, если диск связан с сетевым ресурсом или каталогом файловой системы, поставщик PowerShell — FileSystem. Если диск связан с разделом реестра, поставщиком является Реестр.
Временные диски PowerShell можно связать с любым поставщиком PowerShell. Сопоставленные сетевые диски могут быть связаны только с поставщиком FileSystem.
Чтобы просмотреть список поставщиков в сеансе PowerShell, используйте командлет Get-PSProvider
.
Тип: | String |
Position: | 1 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Root
Указывает расположение хранилища данных, с которым сопоставляется диск PowerShell.
Например, укажите сетевую папку, например \\Server01\Public, локальный каталог, например C:\Program Files, или раздел реестра, например HKLM:\Software\Microsoft.
Временные диски PowerShell можно связать с локальным или удаленным расположением на любом поддерживаемом диске поставщика. Сопоставленные сетевые диски могут быть связаны только с расположением файловой системы на удаленном компьютере.
Тип: | String |
Position: | 2 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Scope
Указывает область для диска. Допустимыми значениями этого параметра являются глобальные, локальные и скрипты или число относительно текущей области. Число областей 0 по количеству областей. Текущее число области равно 0, а его родительский — 1. Дополнительные сведения см. в about_Scopes.
Тип: | String |
Position: | Named |
Default value: | Local |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-UseTransaction
Включает команду в активную транзакцию. Этот параметр действителен только в том случае, если выполняется транзакция. Дополнительные сведения см. в about_Transactions.
Тип: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None
Входные данные в этот командлет невозможно передать.
Выходные данные
Примечания
-
New-PSDrive
предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в сеансе, используйтеGet-PSProvider
. Дополнительные сведения о поставщиках см. в about_Providers. - Сопоставленные сетевые диски относятся к учетной записи пользователя. Сопоставленные диски, созданные в сеансах с повышенными привилегиями или сеансах с использованием учетных данных другого пользователя, не отображаются в сеансах, запущенных с использованием различных учетных данных.