无法在计划程序中使用映射驱动器复制项目
Cannot copy item using mapped drive in Scheduler
我有一个简单的 PowerShell 脚本,如果文件在过去 1 天内被修改,它会从映射的网络驱动器复制文件。
$source = "Z:\"
$target = "E:\target"
$files = get-childitem $source
foreach ($file in $files) {
if($file.LastWriteTime -ge (get-date).AddDays(-1)) {
Copy-Item $file.FullName $target
}
}
如果我手动执行这个脚本运行没问题。
如果我尝试使用计划任务,副本不会运行。我通过创建目录确认脚本是 运行ning。
如果我改为从本地驱动器而不是网络驱动器复制,脚本 运行 可以正常执行计划任务。
计划任务运行宁作为管理员帐户。
脚本从网络驱动器复制文件 运行 可以手动但不能通过计划任务。如果从本地而不是网络驱动器复制,脚本 运行 可以作为任务。
有什么想法吗?
尝试指定完整的 UNC 路径而不是网络驱动器。 (网络驱动器是每个用户的配置项。)
将驱动器映射为临时 PowerShell 驱动器...将以下内容添加为脚本的第一行
New-PSDrive -Name Z -PSProvider FileSystem -Root \server\sharename
我有一个简单的 PowerShell 脚本,如果文件在过去 1 天内被修改,它会从映射的网络驱动器复制文件。
$source = "Z:\"
$target = "E:\target"
$files = get-childitem $source
foreach ($file in $files) {
if($file.LastWriteTime -ge (get-date).AddDays(-1)) {
Copy-Item $file.FullName $target
}
}
如果我手动执行这个脚本运行没问题。
如果我尝试使用计划任务,副本不会运行。我通过创建目录确认脚本是 运行ning。
如果我改为从本地驱动器而不是网络驱动器复制,脚本 运行 可以正常执行计划任务。
计划任务运行宁作为管理员帐户。
脚本从网络驱动器复制文件 运行 可以手动但不能通过计划任务。如果从本地而不是网络驱动器复制,脚本 运行 可以作为任务。
有什么想法吗?
尝试指定完整的 UNC 路径而不是网络驱动器。 (网络驱动器是每个用户的配置项。)
将驱动器映射为临时 PowerShell 驱动器...将以下内容添加为脚本的第一行
New-PSDrive -Name Z -PSProvider FileSystem -Root \server\sharename