到处搜索,但没有运气。我想写一个小脚本来搜索一个确切的文件名,而不仅仅是一个文件名中的字符串。例如,如果我使用资源管理器搜索“主机”,默认情况下会得到多个结果。通过脚本,我只需要我指定的名称。我认为这是可能的?Powershell脚本查找特定的文件/文件名?
我只是真的开始了脚本,它只是为我个人使用,所以它并不重要,它只是窃听我。我有几个驱动器,所以我开始使用2个输入,一个用于查询驱动器盘符,另一个用于指定文件名。我可以通过扩展名,文件大小等进行搜索,但似乎无法将搜索锁定到确切的名称。
任何帮助,将不胜感激!
编辑:感谢所有的回应。只是为了更新。我在我的小脚本中添加了一个答案,并且效果很好。所有三个回应都奏效了,但我最终只能使用一个,其他两个都没有问题。干杯。只是为了澄清,'npp'是Notepad ++在找到文件后打开文件的别名。
$drv = read-host "Choose drive"
$fname = read-host "File name"
$req = dir -Path $drv -r | Where-Object { !$PsIsContainer -and [System.IO.Path]::GetFileNameWithoutExtension($_.Name) -eq $fname }
set-location $req.directory
npp $req
啊是的,'-Filter'对此更快。他说他正在寻找文件,所以你需要添加'? {!$ PsIsContainer}'。 – 2010-08-06 22:19:39
谢谢,正是我之后:) – gavin19 2010-08-07 03:08:30
为什么不添加-File开关? – SteveMustafa 2014-06-27 16:08:25