date Saturday, June 10, 2017 9:10:11 AM 但是 Get-Command date 抛出异常: PS> Get-Command date Get-6ren">
gpt4 book ai didi

powershell - "date"是什么? "Get-Command date"抛出 CommandNotFoundException

转载 作者:行者123 更新时间:2023-12-02 23:09:57 28 4
gpt4 key购买 nike

工作日期:

PS> date

Saturday, June 10, 2017 9:10:11 AM

但是 Get-Command date 抛出异常:

PS> Get-Command date
Get-Command : The term 'date' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Get-Command date
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (date:String) [Get-Command], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Commands.GetCommandCommand

此外,Get-Alias date 也会引发异常:

PS> Get-Alias date
Get-Alias : This command cannot find a matching alias because an alias with the name 'date' does not exist.
At line:1 char:1
+ Get-Alias date
+ ~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (date:String) [Get-Alias], ItemNotFoundException
+ FullyQualifiedErrorId : ItemNotFoundException,Microsoft.PowerShell.Commands.GetAliasCommand

$PSVersionTable.PSVersion 在 Windows 10 上为“5.1.15063.296”。

日期似乎不是cmdlet、函数、脚本文件、可操作程序或别名。那么,日期是什么?

最佳答案

PowerShell CommandDiscovery API 使用 the following precedence order将命令名称解析为命令:

  1. 别名
  2. 函数
  3. cmdlet
  4. native Windows 命令

如果命令名称​​不包含破折号或斜杠,并且在用完上面列表中的最后一个选项后没有找到命令,它将重试,但 with Get- prepended .

因此,Get 动词也称为默认命令动词。

这适用于与现有别名、函数或 cmdlet 名称或 $env:path 中的 native 可执行文件不发生冲突的任何 Get-* 命令,例如:

Alias
Item
ChildItem

...等等。

<小时/>

如果您再次想知道为什么命令会以某种方式解析,您可以使用 Trace-Command cmdlet从 powershell 引擎获取调试级别信息:

Trace-Command -Expression { date } -Name Command* -Option All -PSHost
在这种情况下,

Command* 将匹配 CommandSearchCommandDiscovery 例程,并准确显示 powershell 解析命令所采取的步骤姓名日期

关于powershell - "date"是什么? "Get-Command date"抛出 CommandNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44476159/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com