powershell - Powershell GetChildItem 使用错误的路径来查找匹配项
问题描述
现在我正在尝试编写一个小的 Powershell 脚本来检查文件是否存在。我的一个变量称为测试,其目的是在基本路径中查找不超过一天的文件
文件在逻辑中命名为:File2021-02-1717821 等
我现在的代码:
$basepath='C:\Users\MyName\Documents\2020-09-06 193009 Testing'
$date=(get-date).AddDays(-1).ToString("YYYY-MM-dd")
$test=Get-ChildItem $basepath | Where-Object Name -match ($date) | ForEach-Object {$_.FullName}
但是 Test 只会返回脚本位置的文件,而不是 basepath 变量的文件。我还有一个变量来返回与测试条件匹配的最新文件,但它也返回脚本本身,而不是查看基本路径的目录。
$last = Get-ChildItem -Path $test | Sort-Object LastAccessTime -Descending | Select-Object -First 1
解决方案
这是你想要做的吗?
($basepath = 'D:\Temp\DateStringFiles')
# Results
<#
D:\Temp\DateStringFiles
#>
($date = (get-date).AddDays(-1).ToString('yyyy-MM-dd'))
# Results
<#
2021-02-16
#>
Get-ChildItem -Path $basepath |
Format-Table -AutoSize
# Results
<#
Directory: D:\Temp\DateStringFiles
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 17-Feb-21 09:07 0 File2021-02-1617821.txt
-a---- 17-Feb-21 09:07 0 File2021-02-1617822.txt
-a---- 17-Feb-21 09:07 0 File2021-02-1717821.txt
#>
(
$test = Get-ChildItem -Path $basepath |
Where-Object -Property FullName -Match $Date |
Format-Table -AutoSize
)
# Results
<#
Directory: D:\Temp\DateStringFiles
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 17-Feb-21 09:07 0 File2021-02-1617821.txt
-a---- 17-Feb-21 09:07 0 File2021-02-1617822.txt
#>
(
$last = Get-ChildItem -Path $basepath |
Where-Object -Property FullName -Match $Date |
Select-Object -First 1 |
Format-Table -AutoSize
)
# Results
<#
Directory: D:\Temp\DateStringFiles
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 17-Feb-21 09:07 0 File2021-02-1617821.txt
#>
推荐阅读
- git - 无法从 origin/ 提交文件
到原点/主 - node.js - 带有 Socket.io 和 Express 的 Node.js 聊天应用程序在本地工作,但不在主机上
- android - Android Camera2 onCaptureStarted 回调
- azure-ad-b2c - B2C重置密码
- sql-server - SQLServer 无法创建表,“已经存在”,但它不是 AFAICT
- ruby-on-rails - 查询将数据从表中的一个列值移动到另一个
- javascript - 删除另一个样式标记后通过 js 添加样式标记不起作用
- c# - OpenXML 读取文档
- html - 为什么列表图标不出现?
- python - 如何强制以特定的明显模式对数据进行聚类?