PowerShell实战:Get-Item命令使用详解

简介: 【2月更文挑战第10篇】Get-Item 命令使用频率非常高,主要是获取位于指定位置的项。 一般搭配使用通配符 (*) 来获取项目的包含的项目。如果不使用*的话只是获取当前项的内容。


Get-Item 命令使用频率非常高,主要是获取位于指定位置的项。 一般搭配使用通配符 (*) 来获取项目的包含的项目。如果不使用*的话只是获取当前项的内容。

一、语法格式

Get-Item
   [-Path] <string[]>
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Force]
   [-Credential <pscredential>]
   [-Stream <string[]>]
   [<CommonParameters>]

二、示例

获取当前目录

get-item .

说明: . 表示位于当前位置的项

image.png

获取当前目录中的所有项

PS E:\test> get-item *
    目录: E:\test
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        2022/11/26     20:14          13595 1.png
-a----        2022/11/26     20:11           8598 11.xlsx
-a----        2022/11/26     20:16           6362 112.xlsx
-a----        2022/11/26     20:14          13595 18888.png
-a----        2022/11/26     20:11           8598 666.xlsx
-a----          2022/7/7     14:11          13595 logo.png

说明: 通配符 (*) 表示当前项的所有内容

image.png

获取指定目录所有的项

PS E:\test> get-item -path  d:\test\*
    目录: D:\test
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         2023/1/28     14:30                111
d-----          2023/7/8     10:21                222
-a----         2023/4/11      8:51          15093 1.jpg
-a----         2022/8/20      8:30         164106 2.png
-a----         2023/1/29     14:34          14547 3.jfif
-a----          2022/8/1      8:29          58870 4.png
-a----         2023/1/29     15:24         158495 5.png
-a----          2023/2/7     15:06            259 filelist.txt
-a----         2023/4/11     11:00         112752 t3.pdf
-a----         2023/4/11     11:12         580826 url-html.pdf
-a----         2023/4/18     14:23           2389 轮播.html

image.png

注意:文件目录不要出现特殊字符,比如空格 等,否则执行会报错。具体看下图。

image.png

获取目录的属性,这里获取文件的创建时间

(Get-Item E:\Test).CreationTime

image.png

查看目录的所有属性

语法格式:(Get-Item 文件按目录) | Get-Member

PS E:\test> (Get-Item E:\test) | Get-Member

image.png

获取注册表项目的内容

首先打开注册表,找到蓝牙的注册表进行测试对比

image.png

Get-Item HKLM:\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Bluetooth\Audio\Hfp\AudioGateway

输出结果:

Hive: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Bluetooth\Audio\Hfp
Name                           Property
----                           --------
AudioGateway                   BrsfSupportedFeatures : 1895
                               Enabled               : 1
                               ProfileVersion        : 263
                               RfcommServerChannel   : 1
                               SdpNetworkSupport     : 1
                               SdpSupportedFeatures  : 39

image.png

获取文件目增加过滤条件

# 获取test目录所有文件列表
get-item -path  E:\test\*
# 获取test目录下面后缀名不是png的文件列表
get-item -path  E:\test\* -Exclude "*.png"
# 获取test目录下面后缀名不是png的文件列表,并且以6开头的文件
get-item -path  E:\test\* -Include "6*"  -Exclude "*.png"

image.png

三、常用参数说明

-Path:参数指定项目的路径,支持通配符。 -Path参数是必需的。可以使用.指定当前目录。 如果需要指定当前位置中的所有项目,可以使用*。

-Include:包含的一个或多个项作为字符串数组,可以使用通配符,简单来说就是根据文件名称进行过滤筛选,参数类型为字符串数组[]。

-Exclude排除的一个或多个项作为字符串数组,可以使用通配符,简单来说就是根据文件名称进行过滤筛选,参数类型为字符串数组[]。

-Force:该参数用于获取无法以其他方式访问的项,例如隐藏项。针对不同提供程序(文件、注册表、硬链接等等)有不同的实现。

-Stream:文件系统提供程序提供的动态参数。仅在 Windows 上可用。主要是用来实现从文件获取指定的备用数据流,支持通配符,获取所有流也是使用* 号获取。

示例:

get-item -path  E:\test\* -filter "1*" -stream *

image.png

-Filter:用于指定过滤器以限定-Path参数,筛选器比其他参数更高效。 当 cmdlet 获取对象时,提供程序会应用筛选器,而不是在检索对象后让 PowerShell 筛选对象。

例如:下面这个案例通过filter过滤

PS E:\test>  get-item -path  E:\test\*
    目录: E:\test
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----          2023/7/8     10:59                02
d-----          2023/7/8     10:59                11
-a----        2022/11/26     20:14          13595 1.png
-a----        2022/11/26     20:11           8598 11.xlsx
-a----        2022/11/26     20:16           6362 112.xlsx
-a----        2022/11/26     20:14          13595 18888.png
-a----        2022/11/26     20:11           8598 666.xlsx
-a----          2022/7/7     14:11          13595 logo.png
PS E:\test>  get-item -path  E:\test\* -filter "1*"
    目录: E:\test
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----          2023/7/8     10:59                11
-a----        2022/11/26     20:14          13595 1.png
-a----        2022/11/26     20:11           8598 11.xlsx
-a----        2022/11/26     20:16           6362 112.xlsx
-a----        2022/11/26     20:14          13595 18888.png

image.png

相关文章
|
1月前
|
XML 运维 监控
PowerShell实战:Get-Content命令使用详解
【2月更文挑战第12篇】 Get-Content 主要作用是获取路径指定位置的项(文本类文件)的内容,例如文件中的文本或函数的内容。 对于文件,内容一次读取一行,并返回对象的集合,每个对象表示一行内容。
|
1月前
|
运维 数据库
Powershell实战:测试网络请求两个命令介绍
【2月更文挑战第11篇】 Test-Connection 命令将 Internet 控制消息协议 (ICMP) 回显请求数据包或 ping 发送给一台或多台远程计算机并返回回显响应回复。 我们可以使用该命令确定是否可通过 IP 网络ping通特定的计算机。
PowerShell实战:文件操作相关命令笔记
【2月更文挑战第9篇】cmdlet New-Item 将创建新项并设置其值。 可创建的项类型取决于项的位置。 例如,在文件系统 New-Item 中创建文件和文件夹。 在注册表中, New-Item 创建注册表项和条目。
|
4月前
|
前端开发 微服务 Windows
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
|
5月前
|
Shell Linux 开发工具
windows中cmd和PowerShell批处理命令
之前在 Git 批量删除本地分支,有用到 Linux 或 MacOS 下的批处理命令,这个命令中的 grep、xargs 本身是 Shell script,在 windows 中的 cmd 和 PowerShell 中是不能用的
51 0
|
7月前
|
SQL 数据库
PowerShell 脚本必备命令
PowerShell 脚本必备命令
|
8月前
|
JavaScript Windows
[Vue]解决 Windows PowerShell 不识别 vue 命令的问题
[Vue]解决 Windows PowerShell 不识别 vue 命令的问题
|
3月前
|
存储 Ubuntu Linux
windows可以安装Ubuntu,ubuntu上也可以安装Powershell
powerhsell除了可以在windows上使用外,还可以在Ubuntu上部署开发环境。下面介绍Ubuntu上安装powershell的方法。
53 0
|
8月前
|
Windows
使用PowerShell获取Windows当前锁屏壁纸
使用PowerShell获取Windows当前锁屏壁纸 如果原始图片丢了,用这段代码就可以提取当前锁屏壁纸了!
102 0