Compress-SevenZip Cmdlet
Parameters Output Objects Config Settings
The Compress-SevenZip component implements a compressor for SevenZip files.
Syntax
Compress-SevenZip [parameters]
Remarks
The Input parameter should be set to the list of files/folders to include in the archive. The Output parameter should be set to the name and file path of the resulting archive.
To secure the archive with password-protected encryption, simply set the Password parameter.
The cmdlets support pipeline input for some of their parameters. Prebuilding an object and piping it to the cmdlet is very useful, but should be used with caution to prevent security conflicts. Steps have been taken to decrease the risk of a possibly accidental pipe to the cmdlet, for instance, the Credential parameter cannot be piped to the cmdlet and must be specified manually.
# compress the contents of a single folder
Compress-SevenZip -Input C:\temp -Output C:\temparchive.7z -Recurse
Parameter List
The following is the full list of the parameters of the cmdlet with short descriptions. Click on the links for further details.
LogFile | The location of a file to which debug information is written. |
CompressionLevel | The compression level. |
CompressionMethod | The method of compression. |
Config | Specifies one or more configuration settings. |
FileCompressedName | Specifies the path and filename of the file in the archive. |
Input | The files to be included in the archive. |
LogFile | The location of a file to which debug information is written. |
Output | The archive file. |
Overwrite | Whether or not to overwrite the archive. |
Password | The password for the archive. |
Recurse | Whether or not to recurse into subdirectories. |
Output Objects
The following is the full list of the output objects returned by the cmdlet with short descriptions. Click on the links for further details.
SevenZipFile | Returned after creation of a sevenzip file. |
Config Settings
The following is a list of config settings for the cmdlet with short descriptions. Click on the links for further details.
BuildInfo | Information about the product's build. |
CodePage | The system code page used for Unicode to Multibyte translations. |
LicenseInfo | Information about the current license. |
MaskSensitive | Whether sensitive data is masked in log messages. |
UseInternalSecurityAPI | Tells the component whether or not to use the system security libraries or an internal implementation. |
LogFile Parameter (Compress-SevenZip Cmdlet)
The location of a file to which debug information is written.
Syntax
Compress-SevenZip -LogFile string
Remarks
When specified, the cmdlet will log debug information to the file. If the file exists, the information will be appended.Default Value
null
CompressionLevel Property (Compress-SevenZip Cmdlet)
The compression level.
Syntax
Compress-SevenZip -CompressionLevel int
Remarks
This parameter specifies the level of compression to be used, between 0 and 6. Higher values will cause the cmdlet to compress better; lower values will cause the cmdlet to compress faster. A value of 0 will store the file without compression.
Default Value
4
CompressionMethod Property (Compress-SevenZip Cmdlet)
The method of compression.
Syntax
Compress-SevenZip -CompressionMethod string
Remarks
This is used to specify different compression methods. By default the cmdlet uses the LZMA compression method (a value of 0). Supported values are:
Value | Method |
lzma (0 - default) | LZMA |
bzip2 (1) | BZip2 |
delta (2) | Delta |
copy (3) | Copy (no compression) |
deflate (4) | Deflate |
lzma2 (5) | LZMA2 |
Default Value
0
Config Property (Compress-SevenZip Cmdlet)
Specifies one or more configuration settings.
Syntax
Compress-SevenZip -Config string[]
Remarks
The Config parameter takes one or more name-value pairs that represent the name of the configuration setting and value, i.e.: -config "Name=Value"
Default Value
null
FileCompressedName Property (Compress-SevenZip Cmdlet)
Specifies the path and filename of the file in the archive.
Syntax
Compress-SevenZip -FileCompressedName string
Remarks
This parameter is optional and may be set to specify the path and name of the file as it exists in the archive. By default the cmdlet will automatically determine this value. If path information is specified it must be specified in a Unix style format. For instance "myfolder/myfile.txt".
This parameter is only applicable when adding a single file to the archive. If multiple files are added this parameter is ignored.
Default Value
""
Input Property (Compress-SevenZip Cmdlet)
The files to be included in the archive.
Syntax
Compress-SevenZip -Input string[]
Remarks
The parameter can contain directory paths as well, where everything in the directory needs to be included in the compressed file.
Default Value
null
Parameter Position
0
Parameter Alias
files
This is a required parameter.
LogFile Property (Compress-SevenZip Cmdlet)
The location of a file to which debug information is written.
Syntax
Compress-SevenZip -LogFile string
Remarks
When specified, the cmdlet will log debug information to the file. If the file exists, the information will be appended.
Default Value
""
Output Property (Compress-SevenZip Cmdlet)
The archive file.
Syntax
Compress-SevenZip -Output string
Remarks
Specifies the name of compressed file to be created.
Default Value
""
Parameter Position
1
Parameter Alias
out
Overwrite Property (Compress-SevenZip Cmdlet)
Whether or not to overwrite the archive.
Syntax
Compress-SevenZip -Overwrite SwitchParameter
Remarks
If this flag is set, the user is not queried for overwrite confirmation when the file exists.
Default Value
false
Password Property (Compress-SevenZip Cmdlet)
The password for the archive.
Syntax
Compress-SevenZip -Password string
Remarks
This parameter specifies the case-sensitive password used to decrypt the archive.
Default Value
""
Recurse Property (Compress-SevenZip Cmdlet)
Whether or not to recurse into subdirectories.
Syntax
Compress-SevenZip -Recurse SwitchParameter
Remarks
If Input includes directory paths, this setting indicates whether a recursive search for files should be done by the cmdlet.
Default Value
false
SevenZipFile Output Object (Compress-SevenZip Cmdlet)
Returned after creation of a sevenzip file.
Syntax
Object SevenZipFile {string File;
long Size;
bool Secure;
}
Remarks
After constructing a sevenzip file successfully, the SevenZipFile object is returned.
File contains the full path of the compressed file.
Size contains the file size of the compressed file.
Secure indicates whether or not the file was password protected.
Config Settings (Compress-SevenZip Cmdlet)
The cmdlet accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the cmdlet, access to these internal properties is provided through the Config method.
Base Config Settings
BuildInfo: Information about the product's build.When queried, this setting will return a string containing information about the product's build. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CodePage:
The system code page used for Unicode to Multibyte translations.The default code page is Unicode UTF-8 (65001).
The following is a list of valid code page identifiers:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LicenseInfo:
Information about the current license.When queried, this setting will return a string containing information about the license this instance of a cmdlet is using. It will return the following information:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MaskSensitive:
Whether sensitive data is masked in log messages.In certain circumstances it may be beneficial to mask sensitive data, like passwords, in log messages. Set this to true to mask sensitive data. The default is false.
This setting only works on these cmdlets: AS3Receiver, AS3Sender, Atom, Client(3DS), FTP, FTPServer, IMAP, OFTPClient, SSHClient, SCP, Server(3DS), Sexec, SFTP, SFTPServer, SSHServer, TCPClient, TCPServer. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UseInternalSecurityAPI:
Tells the cmdlet whether or not to use the system security libraries or an internal implementation.
When set to false, the cmdlet will use the system security libraries by default to perform cryptographic functions where applicable.
In this case, calls to unmanaged code will be made. In certain environments this is not desirable.
To use a completely managed security implementation set this setting to true.
Setting this setting to true tells the cmdlet to use the internal implementation instead of using the system security libraries. On Windows, this setting is set to false by default. On Linux/macOS, this setting is set to true by default. If using the .NET Standard Library, this setting will be true on all platforms. The .NET Standard library does not support using the system security libraries. Note: This setting is static. The value set is applicable to all cmdlets used in the application. When this value is set the product's system DLL is no longer required as a reference, as all unmanaged code is stored in that file. |