在我的脚本中我使用zip功能:
[Reflection.Assembly]::LoadWithPartialName( "System.IO.Compression.FileSystem" )
[System.IO.Compression.ZipFile]::CreateFromDirectory( $sourcedir, $zipfilename)
但这会在cmd中生成详细输出:
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression.FileSystem/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.dll
FullName : System.IO.Compression.FileSystem, Version=4.0.0.0, *Culture=neutral, PublicKeyToken=b77a5c561934e089
EntryPoint :
DefinedTypes : {System.IO.Compression.ZipFile, Sy*stem.IO.Compression.ZipFileExtensions, System.IO.Compression.SR}
Evidence : {<System.Security.Policy.GacInstalled version="1"/>
, <StrongName version="1"
Key="00000000000000000400000000000000"
Name="System.IO.Compression.FileSystem"
Version="4.0.0.0"/>
, <System.Security.Policy.Url version="1">
<Url>file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.IO.Compression.FileSystem/v4.0_4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.dll</Url>
</System.Security.Policy.Url>
如何关闭这些讯息?
答案 0 :(得分:0)
将管道和Out-Null添加到输出不需要的消息的行中。
[Reflection.Assembly]::LoadWithPartialName( "System.IO.Compression.FileSystem" ) | Out-Null
[System.IO.Compression.ZipFile]::CreateFromDirectory( $sourcedir, $zipfilename) | Out-Null
答案 1 :(得分:0)
这里有多种选择。
更改语法(仅适用于第一行):
Add-Type -AssemblyName System.IO.Compression.FileSystem
将结果转换为void:
[void][Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem")
将结果传递给Out-Null
:
[Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem") | Out-Null
存储在变量中(可以是任何变量,但$null
感觉适应):
$null = [Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem")
奇怪的是,我没有设法找到另一个关于压缩命令输出的线程...但我知道有一些;-)
。