如何递归搜索远程服务器中的文件
How to recursively search for a file in a remote server
我正在使用 dir \pwdf1280\rep\"*.txt" /S
搜索文件夹 rep 中的所有 txt 文件。我使用 /S
参数在子目录中搜索相同的参数,但问题是该命令永远运行。我基本上是在编写一个 perl 脚本,它必须找到这些文件及其时间戳。
有没有其他方法可以解决这个问题,或者我可以改进上面的命令吗?
问题是我上面提到的 dir 命令永远运行并且不显示 rep's
子目录中的文件。它只显示 rep
目录中的文件。我想在 rep's
子目录中搜索文件。
一种可能加快进程的方法是 运行 使用 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
备选方案可能是 运行 dir
命令远程使用来自 SysInternals 的 psexec
或来自 PuTTY 的 plink
。
我正在使用 dir \pwdf1280\rep\"*.txt" /S
搜索文件夹 rep 中的所有 txt 文件。我使用 /S
参数在子目录中搜索相同的参数,但问题是该命令永远运行。我基本上是在编写一个 perl 脚本,它必须找到这些文件及其时间戳。
有没有其他方法可以解决这个问题,或者我可以改进上面的命令吗?
问题是我上面提到的 dir 命令永远运行并且不显示 rep's
子目录中的文件。它只显示 rep
目录中的文件。我想在 rep's
子目录中搜索文件。
一种可能加快进程的方法是 运行 使用 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
备选方案可能是 运行 dir
命令远程使用来自 SysInternals 的 psexec
或来自 PuTTY 的 plink
。