powershell - 在文件夹中查找最新文件
问题描述
我有以下代码:a
$Destination = "\\DC-Server1\Backups$\Folder1"
do{
$Server = Test-Connection 'RegionalServer1' -Count 1 -Delay 30 -Quiet
if($Server)
{
Get-ChildItem E:\Backups | Where-Object { -not $_.PSIsContainer } |
Sort-Object -Property $_.CreationTime | Select-Object -First 1 |
Copy-Item -Destination $Destination -Force
}
}until($Server)
此脚本每天运行,在另一个脚本在每天 06:00 创建副本后 15 分钟运行。文件格式为“data_$($CurrentDate).mdb”
我正在努力寻找今天创建的文件。
输出自Get-ChildItem E:\Backups
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2021/09/01 10:46 PM 982913024 data_02-09-2021 06-00.mdb
-a---- 2021/09/02 8:19 AM 982913024 data_02-09-2021 18-00.mdb
-a---- 2021/09/03 1:21 AM 982913024 data_03-09-2021 06-00.mdb
-a---- 2021/08/27 10:06 AM 982913024 data_27-08-2021 10-33.mdb
-a---- 2021/08/27 10:40 AM 982913024 data_27-08-2021 10-45.mdb
-a---- 2021/08/27 5:10 PM 982913024 data_27-08-2021 18-00.mdb
-a---- 2021/08/28 5:28 AM 982913024 data_28-08-2021 06-00.mdb
-a---- 2021/08/28 5:28 AM 982913024 data_28-08-2021 18-00.mdb
-a---- 2021/08/29 4:24 AM 982913024 data_29-08-2021 06-00.mdb
-a---- 2021/08/29 3:55 PM 982913024 data_29-08-2021 18-00.mdb
-a---- 2021/08/30 12:57 AM 982913024 data_30-08-2021 06-00.mdb
-a---- 2021/08/30 4:28 PM 982913024 data_30-08-2021 18-00.mdb
-a---- 2021/08/30 4:28 PM 982913024 data_31-08-2021 06-00.mdb
解决方案
我认为您正在查看错误的属性..使用.LastWriteTime
而不是.CreationTime
:
Get-ChildItem -Path 'E:\Backups' -File |
Sort-Object -Property $_.LastWriteTime -Descending | Select-Object -First 1 |
Copy-Item -Destination $Destination -Force
- LastWriteTime是文件最后一次修改的时间,而
- CreationTime为您提供文件首次创建的时间。当文件被复制或移动到另一个位置时,CreationTime 会被更改并采用制作副本的日期和时间。
Switch-File
的作用与 相同Where-Object { -not $_.PSIsContainer }
,但要快得多。我相信这是在 PowerShell 3.0 版中引入的
推荐阅读
- python - 应该是无限循环
- c++ - 在 VSCode 中使用 MSVS 编译器构建 OpenCV 应用程序
- python-3.x - 解压字典字典参数,并在多处理池中使用 **kwargs
- javascript - 当第二个可观察值发生变化时,combineLatest 没有发出?
- spring - 将数据从控制器传递到 ChartJS
- php - 错误 SQLSTATE [42P01]:未定义表:7 错误:Laravel 中的表缺少 FROM 子句条目
- php - 当会话在php中结束时如何重定向回登录页面?
- python - 当我按下 Enter 键时出现错误 - 我如何忽略 enter 键然后继续输入?
- java - 如何将布尔值从 DialogFragment 传递到 Android 中的另一个 Fragment?
- python - 如何获取 anaconda/miniconda vs python 版本映射表?