如何使用PowerShell仅将新文件从一个文件夹复制到另一个文件夹

射线

我在完成Powershell脚本时遇到了一些麻烦。我有一个程序可以将图像下载到一个临时文件夹中,然后在一个小时内它将删除图像文件。有时我想保留一些文件,因此我正在创建一个Powershell脚本,将图像文件从临时文件夹复制到新文件夹,以便我可以对它们进行排序并保留我想要的内容。

  • 这是从下载文件夹复制到目标文件夹的一种方法。
  • 由于该脚本将由Windows Task Scheduler每20分钟运行一次,因此我希望该脚本将其在下载文件夹中找到的文件与目标文件夹中的文件进行比较,以查看其是否已经存在。
  • 如果文件是新文件,则将其复制(如果它已在目标文件夹中),则将其忽略。
  • 这仅与文件名完全匹配,而不进行二进制比较。

在网上搜索时,我在TomsITpro上的“如何使用PowerShell同步文件夹”上找到了一个脚本此脚本在两个文件夹之间双向复制文件。当我尝试将其修改为仅以一种方式复制时,出现Powershell错误。

$DownloadFolder = 'D:\TempImages'
$KeepFolder = 'D:\KeepImages'

$DownloadFiles = Get-ChildItem -Path $DownloadFolder
$KeepFiles = Get-ChildItem -Path $KeepFolder

$FileDiffs = Compare-Object -ReferenceObject $DownloadFiles -DifferenceObject $KeepFiles

$FileDiffs | foreach {
    $copyParams = @{
        'Path' = $_.InputObject.Fullname
    }
    if ($_.SideIndicator -eq '=>')
    {
        $copyParams.Destination = $KeepFolder
    }
    Copy-Item @copyParams
}

该脚本可以很好地进行工作并进行比较,并且仅在新文件已经存在的情况下才进行复制。问题是当我从d:\ script文件夹运行它时,它将所有文件复制到d:\ script文件夹而不是目标文件夹D:\ KeepImages。我在这里做错了什么?

此PowerShell脚本的任何帮助将不胜感激。

松懈
$DownloadFolder = 'D:\TempImages'
$KeepFolder = 'D:\KeepImages'

$DownloadFiles = Get-ChildItem -Path $DownloadFolder

$KeepFiles = Get-ChildItem -Path $KeepFolder

$FileDiffs = Compare-Object -ReferenceObject $DownloadFiles -DifferenceObject $KeepFiles

$FileDiffs | foreach {
$copyParams = @{
    'Path' = $_.InputObject.Fullname
           }
 $Downloadll = $copyParams.path
if ($_.SideIndicator -eq '=>')
    {
      Copy-Item $Downloadll -Destination $KeepFolder 
    }
}

试试这个

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将python与mobaxterm结合使用可将25个随机文件从一个文件夹复制到另一个文件夹

如何使用Powershell将文件夹的内容复制到另一个特定的文件夹?

使用python将某些文件从一个文件夹复制到另一个文件夹

使用过滤器将文件从一个文件夹复制到另一个文件夹

C#将最后一个文件从一个文件夹复制到另一个生成的文件夹

如何使用Python将zipfile从一个文件夹复制到另一个文件夹

使用python将具有特定名称的文件从一个文件夹复制到另一个文件夹

编写代码将图片从一个文件夹复制到另一个文件夹,但目标文件夹为空

如何仅将文件夹从目录复制到另一个目录

仅将较新的文件从一个文件夹复制到另一个文件夹

将文件夹列表复制到另一个文件夹?

PHP将所有图像文件夹从一个文件夹复制到另一个文件夹

如何使用Powershell将文件从一个文件夹复制并重命名到另一个文件夹?

使用随机前缀将文件从一个文件夹复制到另一个文件夹

如何使用Java将文件从一个文件夹复制到另一个文件夹?

使用Shutil将文件从一个文件夹复制到另一个文件夹

如何使用Java API将文件从一个HDFS文件夹复制到另一个HDFS文件夹?

使用Shell脚本将文件从一个文件夹复制到另一个文件夹

将文件从一个目录复制到另一个目录,同时为每个文件创建一个新文件夹,并以该文件命名

如何将一个文件夹复制到另一个文件夹

将内容从一个文件夹复制到另一个文件夹

使用python仅将更新/新文件从一个文件夹复制到另一个文件夹

使用 robocopy 将 zip 文件从一个文件夹复制到另一个文件夹的语法问题

将文件从一个文件夹复制到另一个文件夹

如何显示将超过 1 天的文件从一个文件夹复制到另一个文件夹的进度?

通过bash将文件名从一个文件夹的文件复制到另一个文件夹的文件

如何使用powershell将具有不同名称的文件从一个文件夹复制到另一个文件夹?

需要使用java将所有文件从一个文件夹复制到另一个文件夹

如何将文件夹从一个目录复制到另一个目录,文件夹覆盖而不是合并?