在 PS 脚本中,如何检索表示或指向脚本文件的对象?类似于 get-currentscript 的东西。
我真正想做的是检索脚本文件的创建和/或修改时间。据推测,这可以从脚本文件对象中检索。当然,我也可以为当前脚本文件使用一个愚蠢的旧文件规范。
在StackOverflow上查看这个答案:
虽然当前的答案在大多数情况下是正确的,但在某些情况下它不会给您正确的答案。如果您在脚本函数中使用,则:
$MyInvocation.MyCommand.Name
Run Code Online (Sandbox Code Playgroud)
返回函数的名称而不是脚本名称的名称。
function test {
$MyInvocation.MyCommand.Name
}
Run Code Online (Sandbox Code Playgroud)
无论您的脚本如何命名,都会给您“测试”。获取脚本名称的正确命令始终是
$MyInvocation.ScriptName
Run Code Online (Sandbox Code Playgroud)
这将返回您正在执行的脚本的完整路径。如果您只需要脚本文件名,那么此代码应该可以帮助您:
Split-Path $MyInvocation.PSCommandPath -Leaf
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15663 次 |
| 最近记录: |