Get-RemoteFileSize #
SYNOPSIS #
Retrieves the size of a specified file on a remote server, supporting FTP, FTPS, and SFTP protocols.
SYNTAX #
Get-RemoteFileSize [[-server] <String>] [[-protocol] <String>] [[-port] <Int32>] [-activeMode]
[[-certificate] <String>] [[-user] <String>] [[-password] <Object>] [[-remoteFolder] <String>]
[[-remoteFile] <String>] [-ProgressAction <ActionPreference>] [<CommonParameters>]
DESCRIPTION #
The Get-RemoteFileSize
function retrieves the size, in bytes, of a specific file from a remote server using the provided connection parameters. The function supports FTP, FTPS, and SFTP protocols. Authentication can be performed using a username and password, or a certificate for SFTP. The file whose size is to be retrieved is specified by its path and name in the -remoteFolder
and -remoteFile
parameters, respectively.
Please note the requirements and information about FTP, FTPS, and SFTP, as well as SecureString, which we have summarized under Sftp. There you will also find examples for creating a compatible certificate.
EXAMPLES #
Example 1: Retrieves the size of a specified file from a specific directory on a remote server using simple authentication #
PS C:\> Get-RemoteFileSize -server "ftp.example.com" -protocol "sftp" -user "username" -password "password" -remoteFolder "/docs" -remoteFile "test.docx"
This example retrieves the size of the file “test.docx” located in the “/docs” directory on the SFTP server at “ftp.example.com”. The function uses the provided username and password for authentication.
PARAMETERS #
-activeMode #
If specified, this switch enables active mode for the FTP or FTPS connection. By default, passive mode is used.
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-certificate #
The path to a certificate file for authentication, if using SFTP with certificate-based authentication.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-password #
The password to use for authentication with the remote server. This can be provided as plaintext or as a SecureString.
Type: Object
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-port #
The port number to connect to on the remote server. This typically defaults to 21 for FTP and FTPS, or 22 for SFTP if not specified.
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-protocol #
The protocol to use for the connection, such as FTP, FTPS, or SFTP.
Type: String
Parameter Sets: (All)
Aliases:
Accepted values: ftp, ftps, sftp
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-remoteFile #
The filename for which the file size should be determined in bytes.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 7
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-remoteFolder #
Directory on the remote server.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-server #
The address or hostname of the remote server to connect to.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-user #
The username to use for authentication with the remote server.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters #
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.