gpt4 book ai didi

Windows 批处理脚本复制最近 x 分钟内修改的文件

转载 作者:可可西里 更新时间:2023-11-01 09:57:34 26 4
gpt4 key购买 nike

我是脚本新手。我想在批处理脚本中复制最近 x 分钟内修改的文件。在 Linux 中,有一个简单的命令可以找到并复制最近 x 分钟内修改的 .zip 文件。

find /user/log/ *.log  -mmin -180 -type f | cut -d '/' -f 5 | xargs tar -czvf /tmp/$name.tar.gz --directory=/user/log/

windows有没有什么命令可以用来复制最近x分钟修改过的文件

因为 .log 文件不断被服务日志修改或者我如何根据分钟或小时使用 forfiles 命令

最佳答案

这在 PowerShell 中相对容易。

$ts = New-TimeSpan -Minutes 10
Get-ChildItem -File |
Where-Object { $_.LastWriteTime -gt ((Get-Date) - $ts) }

要从 cmd.exe 运行它,您可以将上面的代码放入扩展名为 .ps1 的文件中并使用 PowerShell 调用它,或者将其放入 .bat 脚本中。在 SO 和网络上有很多这样做的例子。

这是一个更完整的脚本,可以根据您的问题进行复制。一旦您确信将复制正确的文件,请从 Copy-Item cmdlet 中删除 -WhatIf

$ts = New-TimeSpan -Minutes 180
Get-ChildItem -File -Filter '*.zip' |
Where-Object { $_.LastWriteTime -gt ((Get-Date) - $ts) } |
ForEach-Object {
Copy-Item -Path $_ -Destination 'C:\new\dir' -WhatIf
}

关于Windows 批处理脚本复制最近 x 分钟内修改的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49459757/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com