Logo

Documentation home for Transend tools

Compare-WINUserDrives

SYNOPSIS

Use the Compare-WINUserDrives cmdlet to compare the contents of multiple filesystem user drives.

SYNTAX

Help

Compare-WINUserDrives
  -Target <String>
  [-ShowPrereqs]
  [<CommonParameters>]

Action

Compare-WINUserDrives
  -Target <String>
  -Csv <String>
  [-SourceFolder <String>]
  [-TargetFolder <String>]
  [-IncludePattern <String>]
  [-ExcludePattern <String>]
  [-MaxAge <String>]
  [-MinAge <String>]
  [-OneWay]
  [-NoCache]
  [-Verbosity <String>]
  [<CommonParameters>]

DESCRIPTION

Use this cmdlet to compare the contents of a list of user drive pairs.

See the Examples section for cmdlet requirements.

EXAMPLES

Example 1: Compare contents to Google Workspace user drives

Description

This example compares the contents of user drives to paired user drives in Google Workspace.

Provider configuration

Provider Direction APIs Scopes
Windows filesystem Source N/A N/A
Google Workspace Target Google Drive https://www.googleapis.com/auth/drive.readonly
https://www.googleapis.com/auth/drive

CSV format

SourceId TargetId

TMCTools

@{
  Source = @{}
  Target = @{
    GOAdmin             = '<ADMIN_ID>'
    GOServiceAccountKey = '<KEYFILE_PATH>'
  }
}

Compare-WINUserDrives -Csv 'user_drives.csv' -Target Google

Example 2: Compare contents to Microsoft 365 user drives

Description

This example compares the contents of user drives to paired user drives in Microsoft 365.

Provider configuration

Provider Direction APIs Scopes
Windows filesystem Source N/A N/A
Microsoft 365 Target N/A Files.ReadWrite.All
Sites.Manage.All

CSV format

SourceId TargetId

TMCTools

@{
  Source = @{}
  Target = @{
    M365Tenant          = '<TENANT_ID>'
    M365ClientId        = '<CLIENT_ID>'
    M365ClientSecret    = '<CLIENT_SECRET>'
  }
}

Compare-WINUserDrives -Csv 'user_drives.csv' -Target M365

Example 3: Compare contents to filesystem user drives

Description

This example compares the contents of user drives to paired user drives in the local filesystem.

Provider configuration

Provider Direction APIs Scopes
Windows filesystem Source N/A N/A
Windows filesystem Target N/A N/A

CSV format

SourceId TargetId

TMCTools

@{
  Source = @{}
  Target = @{}
}

Compare-WINUserDrives -Csv 'user_drives.csv' -Target Windows

PARAMETERS

-Csv

The path to a CSV file containing drives to process. See the examples for the required CSV format.

Type: String
Parameter Sets: Action
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ExcludePattern

A matching pattern to determine which folders and files to exclude. Syntax details can be found here.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-IncludePattern

A matching pattern to determine which folders and files to include. Syntax details can be found here.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-MaxAge

The maximum age (modified time) of files to include. Syntax details can be found here.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-MinAge

The minimum age (modified time) of files to include. Syntax details can be found here.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-NoCache

Refresh tokens obtained from a prior authentication will be used by default. If you are running different tools that require different permissions or want to log in as a different user, use the -NoCache option to bypass an existing refresh token.

Type: SwitchParameter
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-OneWay

All regular files in the source and target are included by default. Use -OneWay to restrict files to the source only. This is useful when migrating data, when you only care that files from the source are migrated to the target and do not want to consider pre-existing target files.

Type: SwitchParameter
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-ShowPrereqs

Prints the cmdlet prerequisites.

Type: SwitchParameter
Parameter Sets: Help
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-SourceFolder

Restrict the source-side listing to the specified folder.

Note that this parameter is a global option that applies to all drives listed in the CSV file.

This parameter has no effect if the SourceFolder CSV field is set.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Target

The target provider.

Type: String
Parameter Sets: (All)
Aliases:
Accepted values: Dropbox, Google, M365, Windows

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-TargetFolder

Restrict the target-side listing to the specified folder.

Note that this parameter is a global option that applies to all drives listed in the CSV file.

This parameter has no effect if the TargetFolder CSV field is set.

Type: String
Parameter Sets: Action
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-Verbosity

The amount of detail logged during processing.

Type: String
Parameter Sets: Action
Aliases:
Accepted values: None, Normal, Detailed, Diagnostic

Required: False
Position: Named
Default value: Detailed
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.

INPUTS

None

OUTPUTS

System.Void

NOTES

Required config.psd1 keys

These configuration keys are scoped to the Target node in config.psd1.

  • DBXAdmin: The ID of your tenant’s administrator. This must be in dbmid:Q7mX2vK9cR4nT8zLp5aW3yF6uJ1sHdB0eNg format. Only applies to a Dropbox target.

  • DBXClientId: The client ID of your tenant’s app. Only applies to a Dropbox target.

  • DBXClientSecret: The client secret of your tenant’s app. Only applies to a Dropbox target.

  • GOAdmin: The ID of your tenant’s administrator. Only applies to a Google Workspace target.

  • GOServiceAccountKey: The path to your service account’s JSON key file. Only applies to a Google Workspace target.

  • M365ClientId: The client ID of your tenant’s app. Only applies to a Microsoft 365 target.

  • M365ClientSecret: The client secret of your tenant’s app. Only applies to a Microsoft 365 target.

  • M365Tenant: The ID of your tenant. For example, target.org. Only applies to a Microsoft 365 target.

Optional config.psd1 keys

These configuration keys are scoped to the Target node in config.psd1.

  • M365CloudEnvironment: The cloud environment for your tenant. Allowed values are Global, China (.cn), Germany (.de) and USGovernment (.us). Only applies to a Microsoft 365 target.

    Default: Global

Required APIs

See the Examples section for details.

Required scopes

See the Examples section for details.

CSV format

The required fields vary by target. Each example shows the required fields for that target. The following fields are optional:

  • SourceDisplayName
  • SourceFolder
  • TargetDisplayName
  • TargetFolder

General configuration options