пустая строка записи-отладки powershell - PullRequest
4 голосов
/ 13 сентября 2010

Есть ли способ заставить Write-Debug печатать пустую строку без печати DEBUG: Пример:

Write-Debug `n

Write-Debug `n # дополнительные параметры или команда здесь

Write-Debug `n

Выход:>

DEBUG:

DEBUG:

Ответы [ 2 ]

4 голосов
/ 13 сентября 2010

Вы можете сделать это, создав функцию 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

Если вы создаете новую функцию с тем же именем, что и у командлета, вы скрываете исходный командлет, поскольку PowerShell сначала попытаетсянайти функцию с именем Write-Debug.Если его нет, PowerShell пытается найти командлет с таким именем.(как правило, первым типом команды, которую PowerShell пытается найти, является псевдоним, а не функция).

4 голосов
/ 13 сентября 2010

К сожалению нет.Этот префикс «debug:» контролируется хостом powershell, будь то powershell.exe или powershell_ise.exe, и его нельзя настроить.

Обновление : вы можете сделать что-то грязное, например записать некоторыезабой.

write-debug "`b`b`b`b`b`b`b      " -debug
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...