Note : L’intégration PowerShell nécessite un abonnement Pro ou Enterprise à ShareGate Migrate. Elle n’est pas disponible avec le plan Essentials.
Vous ne pouvez pas créer directement un nouveau dossier dans vos OneDrives lorsque vous exécutez l’un de nos scripts PowerShell pour copier du contenu vers plusieurs OneDrives.
Avec ce guide, vous pouvez ajouter un nouveau dossier dans vos OneDrives pour y copier vos fichiers source avant d’exécuter votre script de migration.
Note : Fin janvier 2026, Microsoft a commencé à déprécier le cookie IDCRL, ce qui signifie que seules les méthodes d’authentification Browser et Modern authentication avec les paramètres -Browser et -ModernAuth fonctionneront dans la plupart des locataires Microsoft 365. Pour en savoir plus sur ce changement, consultez Changement important concernant l’authentification « Autre utilisateur » pour Microsoft 365.
Prérequis
Vous disposez des autorisations d’administrateur global ou d’administrateur SharePoint.
Vos OneDrives ont été provisionnés (cela peut être automatisé avec la cmdlet Get-OneDriveURL)
Vous êtes connecté à votre centre d’administration Microsoft 365 dans Explore.
Note : Vous devez être administrateur de la collection de sites sur chaque OneDrive, même si vous avez des privilèges d’administrateur supérieurs. À l’étape (12) ci-dessous, vous utiliserez les autorisations d’administrateur SharePoint ou d’administrateur global pour appliquer les autorisations d’administrateur de la collection de sites nécessaires à la création d’un dossier dans chaque OneDrive.
Nous ne retirons pas les autorisations d’administrateur de la collection de sites dans ce guide, car cette étape est incluse dans d’autres guides de migration PowerShell OneDrive.
Préparation du script
Créez un dossier sur votre lecteur local et une liste CSV de tous vos OneDrives en suivant les étapes ci-dessous :
Sur votre lecteur local, créez un nouveau dossier.
Nommez le dossier comme vous le souhaitez dans vos OneDrives (par exemple, C:\Migrated data).
Notez le chemin du dossier.
Dans ShareGate Migrate, allez dans All reports.
Cliquez sur Create custom report en haut à droite.
Sélectionnez OneDrive for Business comme type d’objet.
Cliquez sur Continue without saving.
Sélectionnez votre locataire.
Cliquez sur Run.
Sélectionnez tous vos OneDrives avec la case à cocher en haut de la liste.
Cliquez sur Edit dans le menu Quick actions.
Sélectionnez Add administrators dans le menu déroulant Transformations.
Recherchez et ajoutez votre compte dans le champ Select user or group qui apparaît.
Cliquez sur Apply.
Cliquez deux fois sur Back pour revenir aux résultats de votre rapport.
Cliquez sur Export en haut à droite.
Enregistrez le fichier sur votre lecteur.
Ouvrez le rapport dans Excel.
Ajoutez le titre ONEDRIVEURL à la deuxième colonne.
Enregistrez ce nouveau fichier au format CSV sur votre lecteur (par exemple, C:\foldermigration.csv).
Notez le chemin du fichier CSV.
Astuce : Vous pouvez réutiliser cette même liste CSV pour votre migration OneDrive.
Créez votre script
Copiez et collez le script suivant dans l’application PowerShell de votre choix.
# Define the CSV file path
$csvFile = "C:\foldermigration.csv"
# Import the CSV file
$table = Import-Csv $csvFile -Delimiter ","
# Define the destination connection
$dstSiteConnection = Connect-Site -Url "https://destinationtenantname-my.sharepoint.com/" -ModernAuth
# Set variables for site and list operations
Set-Variable dstSite, dstList
# Loop through each row in the CSV
foreach ($row in $table) {
# Clear previous values of variables
Clear-Variable dstSite
Clear-Variable dstList
# Connect to the OneDrive site
$dstSite = Connect-Site -Url $row.ONEDRIVEURL -UseCredentialsFrom $dstSiteConnection
# Get the "Documents" list from the destination site
$dstList = Get-List -Name Documents -Site $dstSite
# Import documents from the source file path to the destination list
Import-Document -SourceFilePath "C:\Migrated data" -DestinationList $dstList
}
Adaptez votre script selon vos besoins. Voici quelques conseils :
$csvFile : Modifiez le chemin pour pointer vers le fichier CSV que vous avez enregistré précédemment.
$table : Le séparateur est le symbole utilisé par votre CSV pour séparer les éléments d’une ligne. Assurez-vous que votre script utilise le même séparateur que votre fichier (pour vérifier rapidement, ouvrez le CSV dans le Bloc-notes).
$dstSiteConnection : Remplacez l’URL par l’URL racine de vos OneDrives dans le locataire de destination.
Connect-site : La commande pour se connecter à un site SharePoint. Si vous devez changer la méthode d’authentification pour l’authentification Browser, consultez Connect Site.
Set-Variable et Clear-Variable : Ces commandes permettent d’éviter un problème où une erreur de connexion pourrait faire atterrir vos données dans le mauvais OneDrive.
foreach : Nous utilisons foreach pour parcourir les valeurs de votre fichier CSV. Vous pouvez en savoir plus à ce sujet ici.
-SourceFilePath : Remplacez "C:\Migrated data" par le chemin du dossier que vous avez créé à l’étape (2).
Exécutez votre script une fois qu’il est correctement ajusté et testé.
Migrez le contenu vers vos nouveaux dossiers
Pour migrer votre contenu vers les nouveaux dossiers OneDrive, vous devez ajouter -DestinationFolder "nom du dossier" (remplacez nom du dossier par le nom de votre dossier) à la ligne de copie de votre script de migration OneDrive.
La ligne de copie de votre script de migration devrait ressembler à ceci :
# Import documents from the source folder to the destination list and folder
Import-Document -SourceFolder $row.DIRECTORY -DestinationList $dstList -DestinationFolder "Migrated data"
"Cet article a été traduit à l’aide de l’intelligence artificielle. En cas de doute, veuillez vous référer à la version originale en anglais."
