Powershell PSDrive 在计划任务下不起作用

Powershell PSDrive 在计划任务下不起作用

我正在尝试通过 powershell 将文件从 DMZ 服务器移动到域服务器,我可以通过交互式会话使其工作,但是如果我尝试在计划任务下运行它,则复制会失败。我添加了 transcript start 命令来尝试查看可能发生的情况,但我不知道如何对其进行故障排除。您不允许在计划任务中运行 PSDrive 吗?

Start-Transcript -path C:\temp\pslog.txt -append -NoClobber -IncludeInvocationHeader 

$password = convertto-securestring -String 'somepassword' -AsPlainText -Force
#$pass = Get-Content C:\ITScripts\password.txt | ConvertTo-SecureString

$cred = new-object -typename System.Management.Automation.PSCredential('username@domain', $password)
#$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist "username@domain",$pass
 
New-PSDrive -Name Z -PSProvider filesystem -Root "\\DOMAINSERVER\FOLDERNAME" -Credential $creds
Get-ChildItem "LOCALPATH" -Filter *.txt | Move-Item -Destination "Z:\Inbound" -Force -PassThru

Remove-PSDrive Z

Stop-Transcript

因此,如果我从桌面或 powershell 会话运行它,它可以正常工作,当我从计划任务运行它时,我会得到以下输出。


记录已开始,输出文件为 C:\temp\pslog.txt

New-PSDrive:指定的驱动器根目录“\DOMAINSERVER\FOLDERNAME”不存在,或者不是文件夹。位于 C:\ITScripts\CopyFilesBetweenServer.ps1:11 char:1

  • New-PSDrive-名称 Z-PSProvider 文件系统-Root“\DOMAINSERVER\FOLDERNAME ...
  •   + CategoryInfo          : ReadError: (Z:PSDriveInfo) [New-PSDrive], IOException
      + FullyQualifiedErrorId : DriveRootError,Microsoft.PowerShell.Commands.NewPSDriveCommand
    

New-PSDrive:指定的驱动器根目录“\DOMAINSERVER\FOLDERNAME”不存在,或者不是文件夹。位于 C:\ITScripts\CopyFilesBetweenServer.ps1:11 char:1

  • New-PSDrive-名称 Z-PSProvider 文件系统-Root“\DOMAINSERVER\FOLDERNAME ...
  •   + CategoryInfo          : ReadError: (Z:PSDriveInfo) [New-PSDrive], IOException
      + FullyQualifiedErrorId : DriveRootError,Microsoft.PowerShell.Commands.NewPSDriveCommand
    
    

Remove-PSDrive:找不到驱动器。名称为“Z”的驱动器不存在。位于 C:\ITScripts\CopyFilesBetweenServer.ps1:14 char:1

  • 删除-PSDrive Z
  •   + CategoryInfo          : ObjectNotFound: (Z:String) [Remove-PSDrive], DriveNotFoundException
      + FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.RemovePSDriveCommand
    

Remove-PSDrive:找不到驱动器。名称为“Z”的驱动器不存在。位于 C:\ITScripts\CopyFilesBetweenServer.ps1:14 char:1

  • 删除-PSDrive Z
  •   + CategoryInfo          : ObjectNotFound: (Z:String) [Remove-PSDrive], DriveNotFoundException
      + FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.RemovePSDriveCommand
    
    

感谢您的任何帮助,您可以提供。

相关内容