powershell - 通过 WAN 链接传输文件会导致损坏

标签 powershell networking corruption wan

我遇到了 PDF 文件在从一个 WAN 位置复制到下一个位置时损坏的问题。

我有一个 PowerShell 脚本(下面的代码),它每晚运行以通过 Windows 任务计划程序(有时是两个)从佛罗里达州的卫星办公室复制 PDF 文件到我们在俄勒冈州的公司网络。这些文件通常约为 35 Megs,但已被视为大至 65 Megs。这些文件在卫星位置生成良好,但在晚上运行复制脚本后,文件损坏并且无法打开。

我可以在脚本中做些什么来包含某种类型的错误更正以确保文件不会损坏?有没有更好的工具可以确保文件传输并保持完整性。

只要我可以自动化该过程并且只复制当天生成的文件,我就不会接受任何解决方案。

感谢您的帮助。
大卫

PowerShell 脚本

$SourcePath = "\\Satellite\packingslips"
$RemotePath = "\\Corp\Shared\Packing_Slips\Satellite"

$Curr_date = get-date
$Max_days = "-1"


Get-ChildItem $SourcePath |
    Where-Object {($_.LastWriteTime.Date -ge ($Curr_date.addDays($Max_days)).Date) -and ($_.LastWriteTime.Date -le $Curr_date.Date)} |
    Copy-Item -Destination $RemotePath

不要 mock 我的代码。这不是我的强项。

最佳答案

同意 TessellatingHeckler - 我会看看你在你的 WAN 接口(interface)上的错误率......

但是,我也同意 RoboCopy 是一个很好的前进方向:

robocopy \\Satellite\packingslips \\Corp\Shared\Packing_Slips\Satellite *.pdf /minage:1 /log:<path_to_logfile>

关于powershell - 通过 WAN 链接传输文件会导致损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41491584/

相关文章:

json - PowerShell ConvertFrom-Json 忽略顶级数组?

powershell - 列出当前用户的进程

java - Kryonet 和 Slick2D

git - 如何恢复硬盘故障损坏的 Git 对象?

powershell - 在 Powershell 中找不到类型 [System.Management.Automation.IValidateSetValuesGenerator] 错误

powershell - 在文本文件中组织分类数据并转换为CSV的最快方法

amazon-web-services - 对 EC2 : Optimizing container size, 上托管的多个 Web 应用程序进行 Docker 化并处理端口

java - android - 检测低网络信号,依赖哪个值

c - 从堆栈中错误的内存地址读取堆栈参数

c - 防止输入的字符数组的缓冲区损坏