为什么这个 PowerShell 脚本会挂起?

为什么这个 PowerShell 脚本会挂起?

今天我不得不Start-Sleep多次使用,所以我想为它创建一个快捷函数sleep($time)。但是,每当我进入该函数时,它都不会退出!这肯定是参数的数据类型Start-Sleep或我声明函数的方式的问题。我没有发布整个脚本,而是发布了这个无用的脚本,如果它有效,它会发出熟悉的哔哔声模式:

function beep {
    Write-Host `a
}

function sleep {

    param([int]$time)

    Start-Sleep -m $time
}

beep
sleep(300)
beep
sleep(200)
beep
sleep(50)
beep
sleep(300)
beep
sleep(450)
beep
sleep(200)
beep

答案1

我的系统已经有一个 Start-Sleep 的别名,很奇怪,叫做sleep。运行这个看看你是否拥有它dir alias:sleep。尝试为你的函数取一个不同的名称,看看是否有帮助。

相关内容