Get-RemoteFileAge #
SYNOPSIS #
Retrieves the age of a specified file on a remote server, supporting FTP, FTPS, and SFTP protocols.
SYNTAX #
Get-RemoteFileAge [[-server] <String>] [[-protocol] <String>] [[-port] <Int32>] [-activeMode]
[[-certificate] <String>] [[-user] <String>] [[-password] <Object>] [[-remoteFolder] <String>]
[[-remoteFile] <String>] [-ProgressAction <ActionPreference>] [<CommonParameters>]
DESCRIPTION #
The Get-RemoteFileAge
function retrieves the age of a specific file from a remote server, calculated in seconds from the current time. 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 age is to be retrieved is specified by its path and name in the -remoteFolder
and -remoteFile
parameters, respectively. This function is also internally used to specify a resume age for the Send-RemoteFile
function in FTP and FTPS protocols.
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 age, in seconds, of a specified file from a specific directory on a remote server using simple authentication #
PS C:\> Get-RemoteFileAge -server "ftp.example.com" -protocol "sftp" -user "username" -password "password" -remoteFolder "/docs" -remoteFile "test.docx"
This example retrieves the age 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 age should be determined in seconds from now.
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.