当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:幕后花絮(Trace-Command)

作者:精品下载站 日期:2024-12-14 07:28:32 浏览:15 分类:玩电脑

PowerShell:幕后花絮(Trace-Command)


运行 PowerShell 命令时会发生什么?它是如何工作的?有一个小但信息丰富的 Cmdlet,可帮助您了解幕后情况。该命令称为 Trace-Command。运行 Trace-Command 时,您将有机会了解很多有关 PowerShell 机制的知识。

发现参数绑定

我想看看通过省略路径参数使用 Get-ChildItem 时会发生什么。请注意,Get-ChildItem -Path C:\Temp Get-ChildItem C:\Temp 执行相同操作。 因此我在不带路径参数的情况下运行 Trace-Command。


Trace-Command -Name CommandDiscovery,ParameterBinding -Expression {Get-ChildItem C:\Temp} -PSHost

[玩转系统] PowerShell:幕后花絮(Trace-Command)

有趣的是,参数绑定是自动发生的。 C:\Temp 绑定到 Path 参数。为什么? Path 参数是位置参数,其位置为 0。这意味着第一个参数 (C:\Temp) 将绑定到路径参数。看这个:


Get-Help Get-Childitem -Parameter Path

[玩转系统] PowerShell:幕后花絮(Trace-Command)

发现管道

下一个示例显示了管道的工作。我使用 Foreach-Object 和 New-Item 运行 Trace-Command。这将创建文件 File1.txt。我只提供文件名,不提供编号。数字 (1) 取自管道。


Trace-Command -Name ParameterBinding -Expression {1 | Foreach-Object {New-Item -Path C:\Temp -Name File$_.txt}} -PSHost

[玩转系统] PowerShell:幕后花絮(Trace-Command)

进一步的想法

要了解有关跟踪的更多信息,请运行 Get-TraceSource。


Get-TraceSource | Format-Table -AutoSize

[玩转系统] PowerShell:幕后花絮(Trace-Command)

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯