Подтвердить что ты не робот

Подавить вывод консоли в PowerShell

У меня есть вызов GPG следующим образом в PowerShell script:

$key = & 'gpg' --decrypt "secret.gpg" --quiet --no-verbose > $null

Я не хочу, чтобы какой-либо вывод из GPG отображался на главной консоли, когда я запускаю script.

Из-за моей нужности в PowerShell я не знаю, как это сделать. я искал Qaru и googled для способа сделать это, нашли много способов сделать это, но не работало.

" > $null", например, не действует. Я нашел параметры --quiet --no-verbose для GPG, чтобы помещать меньше вывода в консоль, но все же это не совсем тихо, и я уверен, что есть и способ в PowerShell.

4b9b3361

Ответ 1

Попробуйте перенаправить вывод следующим образом:

$key = & 'gpg' --decrypt "secret.gpg" --quiet --no-verbose >$null 2>&1

Ответ 2

Попробуйте перенаправить вывод Out-Null. Таким образом,

$key = & 'gpg' --decrypt "secret.gpg" --quiet --no-verbose | out-null

Ответ 3

Это дубликат этого вопроса с ответом, который содержит измерение времени различных методов.

Заключение: используйте [void] или > $null.