我有 100 个文件夹,每个文件夹中都有一个特定文件。我想从这 100 个文件夹中提取所有创建日期,并从每个文件夹内的特定文件中提取所有创建日期。
我不知道如何dir
使用 Windows 10 从命令行获取这些属性?
答案1
尝试 PowerShell获取子项cmdlet 带有 -Filter
、-File
和参数的特定变体-Recurse
, -Directory
用于创建文件名和子文件夹的变量对象。之后,环形在文件和目录变量上创建一对大批对象变量。
您可以使用它创建几个列表创建日期和时间具体文件,以及创建日期和时间特定子文件夹,为您提供所需的输出。
PowerShell 脚本
笔记: 将变量值设置
$fName
为您需要搜索的特定文件名,文件名中可以带有或不带有通配符,例如FileName123.png
,*File*.txt
等。还将$src
变量值设置为父文件夹的完整路径,其中第一个子文件夹包含您需要获取属性值的特定文件。
$fName = "FileName123.png";
$src = "C:\Users\Test\Folder\";
$csvFile = "C:\Folder\csvexport\test.csv";
$F = (Get-ChildItem -Path $src -Filter $fName -File -Recurse);
$D = (Get-ChildItem -Path $src -Directory -Recurse);
$Files = ($F | %{"$($_.CreationTime),$($_.FullName)"});
$Dirs = ($D | %{"$($_.CreationTime),$($_.FullName)"});
$Files | Out-File $csvFile -Append;
$Dirs | Out-File $csvFile -Append;
输出示例
09/01/2019 20:30:28,C:\Users\Test\Folder\Dir1\FileName123.png
09/01/2019 20:31:02,C:\Users\Test\Folder\Dir2\FileName123.png
09/01/2019 20:31:05,C:\Users\Test\Folder\Dir3\FileName123.png
09/01/2019 20:30:39,C:\Users\Test\Folder\Dir1
09/01/2019 20:30:45,C:\Users\Test\Folder\Dir2
09/01/2019 20:30:49,C:\Users\Test\Folder\Dir3
支持资源
- 在 Windows 10 中打开 Windows PowerShell 的 5 种方法
- 获取子项
-
标准别名对于 Foreach 对象:'
%
' 符号,ForEach - 输出文件