创建驱动器和复制文件时未找到PowerShell 2.0网络路径

创建驱动器和复制文件时未找到PowerShell 2.0网络路径,powershell,sharepoint,powershell-2.0,filepath,unc,Powershell,Sharepoint,Powershell 2.0,Filepath,Unc,脚本工作了几天,然后我收到一封电子邮件,说它失败了,因为“没有找到网络路径” 当我手动运行它时,它工作正常,因此很难找到问题 如何防止其丢失网络路径?欢迎您提供任何改进或提示 我编写此脚本是为了在共享驱动器上创建一个新文件夹,以便从SharePoint备份记帐日志。我有另一个脚本可以删除这些超过30天的文件夹 脚本将在共享驱动器\sfserverspb4\accounting上创建一个包含今天日期的文件夹 创建一个随机驱动器号介于“d”和“z”之间的驱动器,该驱动器当前未使用 将驱动器指向Sha

脚本工作了几天,然后我收到一封电子邮件,说它失败了,因为“没有找到网络路径”

当我手动运行它时,它工作正常,因此很难找到问题

如何防止其丢失网络路径?欢迎您提供任何改进或提示

我编写此脚本是为了在共享驱动器上创建一个新文件夹,以便从SharePoint备份记帐日志。我有另一个脚本可以删除这些超过30天的文件夹

  • 脚本将在共享驱动器\sfserverspb4\accounting上创建一个包含今天日期的文件夹
  • 创建一个随机驱动器号介于“d”和“z”之间的驱动器,该驱动器当前未使用
  • 将驱动器指向SharePoint路径\intranet.mycompany.com\dept
  • 将所有文件、文件夹、子文件夹从SharePoint路径复制到今天创建的会计共享文件夹
  • 完成后卸下创建的驱动器
  • 这是我的第一个PowerShell脚本

    谢谢大家!

    #Copy po logs from SharePoint (intranet.mycompany.com) to sfserverspb4\accounting
    
    
    Try {
    Write-Host 'Creating New Folder' -fore black -back yellow
    
    
       $today_folder = New-Item -ItemType Directory -Path "\\sfserverspb4\accounting\Backups\PO_Log_Backups\$((Get-Date).ToString('yyyyMMdd'))" -ea stop
    
    
    
    
    Write-Host 'Copying Files...' -fore white -back blue
    
    
       $Drive = ls function:[d-z]: -n | ?{ !(test-path $_) } | random
    
       Write-host "The drive is $drive" -fore green
    
       Net Use $Drive \\intranet.mycompany.com\dept /user:'corp\spadmin' 'spadminpassword'
    
    
       copy-item -Path $Drive\finance\Shared` Documents\PO` Logs\* -recurse -destination $today_folder -ErrorAction Stop
    
       Net Use $Drive /delete     # disconnecting from intranet.mycompany.com
    
    
    
    
    
    
    } 
    
    # If there's an error, stop, and send an email to IT
    Catch {
       Write-Host 'Error in function' -fore white -back red
    
          $ErrorMessage = $_.Exception.Message
          $FailedItem = $_.Exception.ItemName
    
          Send-MailMessage -From itdept@mycompany.com -To myself@mycompany.com -smtpServer "mail.prxy.com" -Subject "The script Copy of PO LOGS on server myserver FAILED!" -Body "Server myserver Scheduled Task 'Copy PO Logs' Failed.  $FailedItem. The error message was: '$ErrorMessage'"
    
    } 
    
    Finally {
       Write-Host 'All done.'
    
    }
    

    请阅读帮助中心关于发布好问题的内容。特别是,您需要发布收到的错误消息。我想我确实发布了一个好问题,错误消息就在那里:“未找到网络路径”。我将阅读帮助中心,看看要更改什么。您没有发布PS生成的完整错误消息。它会有额外的诊断信息。这是我得到的唯一错误。除了Exception.Message之外,还有其他捕获错误的方法吗?必须是
    net use
    失败。这意味着未找到
    \\intranet.mycompany.com\dept
    。如果net use`命令无法查看当前是否存在名为“dept”的共享,则可以添加一个
    net view\\intranet.mycompany.com`。请注意,错误可能是因为当前没有网络连接<代码>网络视图
    在这种情况下将失败。请阅读帮助中心发布的好问题。特别是,您需要发布收到的错误消息。我想我确实发布了一个好问题,错误消息就在那里:“未找到网络路径”。我将阅读帮助中心,看看要更改什么。您没有发布PS生成的完整错误消息。它会有额外的诊断信息。这是我得到的唯一错误。除了Exception.Message之外,还有其他捕获错误的方法吗?必须是
    net use
    失败。这意味着未找到
    \\intranet.mycompany.com\dept
    。如果net use`命令无法查看当前是否存在名为“dept”的共享,则可以添加一个
    net view\\intranet.mycompany.com`。请注意,错误可能是因为当前没有网络连接<代码>网络视图
    在这种情况下将失败。