[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 求助PowerShell获取当前目录下的指定类型的文件

我想获取当前目录下的, 所有的*.exe, *.msi文件, 但是不包括子目录下的文件, 下面代码无效, 求路过大佬指导, 最好不要再用管道流下级筛选, 直接使用Get-ChildItem命令实现
  1. Get-ChildItem -Path . -Include *.exe, *.msi -rec -dep 1
复制代码

本帖最后由 aloha20200628 于 2024-4-24 11:48 编辑

回复 1# 小白龙
  1. Get-ChildItem *.exe, *.msi
复制代码
或者
  1. dir *.exe,*.msi
复制代码
1

评分人数

TOP

回复 2# aloha20200628


    多谢大佬指导, 有用

看来是我想复杂了, 没想到把修饰全去掉直接就可以了, 那-Filter 和-inclue 还有 -rec -dep的功能在这里为什么不适用了呢

TOP

本帖最后由 小白龙 于 2024-4-24 12:17 编辑

回复 2# aloha20200628


    对了怎样加上路径的参数呢? 我在参数前加了一个 . 会报错, 例如我想获取 $HOME\desktop下的文件

TOP

回复 4# 小白龙
  1. Get-ChildItem $home\desktop\*.lnk
复制代码
或者
  1. dir $HOME\desktop\*.lnk
复制代码

TOP

回复 5# aloha20200628

下面这样确实可以了, 但是路径部分有重复, 感觉应该有更简单的
  1. Get-ChildItem $home\desktop\*.msi, $home\desktop\*.exe
复制代码

TOP

回复 6# 小白龙
  1. Get-childItem $home\desktop\* -include *.exe, *.msi
复制代码

TOP

回复 7# aloha20200628


    我被这几个参数整晕了, 下面都不行, 谁能给个使用章法?

Get-childItem . -include *.exe, *.msi
Get-ChildItem . -Filter *.exe, *.msi

TOP

回复 8# 小白龙

用-include参数的关键是要在路径后缀*通配符
  1. Get-childItem .\* -include *.exe, *.msi
复制代码
用-filter参数只能后随一个过滤类型
  1. Get-childItem . -filter *.exe
复制代码
1

评分人数

TOP

花里胡哨的,自己手动判断一下不就行了
gci |?{$_.extension -match 'exe|msi'}

这种shell方式(命令行方式)的花样多,细节也多,记那么多,小心脑容量不够

还有使用方法,为啥不直接看官网的?
https://learn.microsoft.com/zh-c ... view=powershell-5.1
1

评分人数

TOP

返回列表