【发布时间】:2017-06-21 14:08:00
【问题描述】:
我正在创建一个 New-PSDrive 并映射到共享驱动器。代码在函数之外运行良好,但只要它包含在函数中,我就会看到它尝试映射驱动器。当我运行Get-PSDrive时,指定的共享驱动器没有列出来。
这与在函数外运行脚本完全相反,运行Get-PSDrive 后,我绝对可以看到驱动器映射到共享文件夹,并且它也在文件夹资源管理器中的计算机下列出/显示。
function MapDrive {
# creates an array of available Drive Letters
$driveArray = @("A","B","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")
# check every letter in the array if its available then create a New-PSDrive
foreach ($letter in $driveArray) {
If (!(Test-Path "$letter`:")) {
New-PSDrive -Name $letter -Root "\\my_server_ip\shared_folder" -Persist -PSProvider Filesystem -Credential (Get-Credential)
break
}
Else {
Write-Host "No available Drives."
break
}
}
}
MapDrive
Get-PSDrive
【问题讨论】:
-
试试
-scope Global -
我是脚本和使用 Powershell 的新手,我非常感谢 SimonS。
标签: powershell