1
我写了一个Powershell脚本,它使用psftp.exe从多个开关备份配置文件。在PSFTP环的胆量,改编自here,如下:从Powershell脚本调用PSFTP:如何静音输出?
# set up array of psftp commands to run on each switch
$cmd = @("get $config_file_on_switch $local_filename","quit")
#
# pipe those commands to a psftp call
$cmd | & $path_to_PSFTP -l $user -pw $password $IP_addr_of_switch
#
# this is all I'd really like to see on the Powershell console:
Write-Host $name_of_switch
这工作得很好 - 上面的代码是一个循环,穿过交换机的IP地址的CSV列表里面,它做什么,它应该在收集配置文件方面。但我想抑制交换机对psftp命令的响应。 psftp.exe没有禁用控制台输出的机制,并且试图在Powershell中通过在第二行代码末尾添加| Out-Null
来做到这一点,并不会抑制开关输出的显示。
我要补充的是,在PowerShell的命令行窗口中会出现这个问题,而不是在PowerShell ISE中控制台窗格中。
关于如何在这个脚本中使用psftp的想法?
做得好; '*> $ null'是一个较短的选择。 – mklement0