簡體   English   中英

Powershell - 獲取最后修改文件的父目錄名稱

[英]Powershell - Get last modified file's parent directory name

我有幾個文件夾,它們里面都有一個 Log 文件夾和日志文件。 只有一個文件夾會修改其日志文件。 我需要檢索它的頂級父目錄名稱。

我不能使用Sort-Object LastWriteTime ,因為每當更新日志時 - 只有日志文件更新其最后修改時間。 Logtop parent folder根本沒有更新它們的lastwritetime

我怎樣才能做到這一點?

Folder1\Log\filename1.log
Folder2\Log\filename3.log -> Assume this is the latest one that got its log file updated.
Folder3\Log\filename5.log
Folder4\Log\filename2.log
Folder5\Log\filename6.log

我想將“Folder2”作為 output

您可以使用Get-ChildItem執行此操作,過濾“*.log”文件並遞歸子文件夾所在的根文件夾。

然后對文件 LastWriteTime 屬性進行排序,select 是最新的,並從中獲取文件夾名稱:

$rootFolder = 'X:\TheRootFolderWhereTheSubFoldersAre'
Split-Path -Path ((Get-ChildItem -Path $rootFolder -Filter '*.log' -File -Recurse | 
                   Sort-Object LastWriteTime | Select-Object -Last 1).DirectoryName) -Leaf

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM