2017-06-14 43 views
0

我正在使用dir \\pwdf1280\rep\"*.txt" /S搜索文件夾代表中的所有txt文件,並且我使用/S參數在子目錄中搜索相同的問題,但問題是命令永遠運行,我基本上寫了一個Perl腳本,必須找到這些文件及其時間戳,是否有任何其他方法來解決這個問題,或者我可以改善改善上述命令如何遞歸搜索遠程服務器中的文件

問題是dir命令我以上提到永遠運行,不會顯示rep's子目錄中的文件,它只是顯示rep目錄中的文件, i want to search a file in the子目錄

+1

請說明您的具體問題或添加更多的細節,以確切地突出你需要什麼。 – 2017-06-14 09:17:33

+0

如果你正在步行目錄樹,那麼......這將是緩慢的部分。但是,如果你想要熟練的話,可以看看'File :: Find :: Rule'。 – Sobrique

+0

@Sobrique我使用了'File :: Find :: Rule',函數是否將UNC路徑作爲參數 – PopCorn

回答

1

可能會加速進程的一種方法是使用PowerShell在遠程計算機上運行目錄搜索。

C:\src\powershell> type .\rc001.ps1 
Invoke-Command ` 
    -ComputerName 'pwdf1280' ` 
    -Command { Get-ChildItem '\\pwdf1280\rep' -Recurse -Filter '*.txt' } | 
    ForEach-Object { $_.FullName } 

然後,從一個cmd腳本運行:

C:\src\powershell> powershell -NoProfile -File .\rc001.ps1 

替代可能是運行遠程使用從Sysinternals的psexec或從膩子plinkdir命令。

+0

我認爲您問您是否可以使用'\\ pwdf1280 \ rep'作爲Get-ChildItem的路徑。是的你可以。嘗試一下。 – lit

+0

是的,我試過了,但錯誤是它不存在 – PopCorn

+0

使用您的系統名稱和目錄路徑。不要使用'lit'。 'Get-ChildItem'\\ pwdf1280 \ rep'-Recurse -Filter'* .txt'' – lit