有没有办法让 Write-Debug 打印一个空行而不打印 DEBUG:
前任:

写调试`n

Write-Debug `n # 附加参数或命令在这里

写调试`n

输出:>

调试:

调试:

最佳答案

你可以通过像这样创建函数 Write-Debug 来做到这一点:

PS> function Write-Debug {
  [cmdletbinding()]
  param($message)
  if (!$message) {
    write-host; return
  }
  $cmd = get-command -commandType cmdlet Write-Debug
  & $cmd $message
}

PS> Write-Debug 'this is test'; Write-Debug; Write-Debug '3rd row'
DEBUG: this is test

DEBUG: 3rd row

如果创建与 cmdlet 同名的新函数,则会隐藏原始 cmdlet,因为 PowerShell 将首先尝试查找名称为 Write-Debug 的函数。如果没有,PowerShell 会尝试查找具有该名称的 cmdlet。 (通常,PowerShell 尝试查找的第一种命令是别名,而不是函数)。

关于powershell 写调试空行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3696692/

10-13 09:32