So übertragen Sie OneDrive-Dateien über PowerShell an einen anderen Benutzer

So Ubertragen Sie Onedrive Dateien Uber Powershell An Einen Anderen Benutzer



Das Übertragen von Dateien von Ihrem Microsoft OneDrive-Konto an einen anderen Benutzer ist in dem Sinne einfach, dass Sie die Inhalte von Ihrem OneDrive herunterladen und sie dann manuell auf das andere Konto hochladen können. In diesem Beitrag zeigen wir Ihnen, wie es geht Übertragen Sie OneDrive-Dateien über PowerShell an einen anderen Benutzer .



  So übertragen Sie OneDrive-Dateien über PowerShell an einen anderen Benutzer





Dinge, die man beachten muss

Wenn es darum geht, Dateien von Ihrem OneDrive auf ein anderes Konto hochzuladen, ist dies eine Aufgabe, die einige Zeit in Anspruch nehmen wird, da es derzeit nicht möglich ist, Dateien mit einer Größe von mehr als 250 MB hochzuladen. Die gute Nachricht ist, dass PowerShell alle Dateien notiert, die nicht hochgeladen werden können, sodass Sie sie wie gewohnt suchen und freigeben können.





Bevor Sie die Dateien auf das andere OneDrive-Konto hochladen, werden sie zunächst auf Ihren Computer heruntergeladen. Stellen Sie daher sicher, dass auf Ihrer Festplatte oder SSD genügend Speicherplatz vorhanden ist, bevor Sie fortfahren. Und da Ihre Internetverbindung erforderlich ist, hängt die Gesamtgeschwindigkeit der Übertragung von der Qualität des Netzwerks ab.



Nun müssen wir beachten, dass es für das Administratorkonto keine Zwei-Faktor-Authentifizierung gibt. Erstellen Sie daher nur zu diesem Zweck ein temporäres Administratorkonto ohne 2FA.

Dinge, die Sie brauchen werden

Wir werden ein spezielles Skript verwenden, um die Dateien von einem OneDrive-Konto auf ein anderes zu verschieben. Damit das Skript bei Problemen funktioniert, installieren Sie bitte jetzt die folgenden PowerShell-Module:

SharePoint PnP PowerShell-Modul



Öffnen Sie das PowerShell-Tool als Administrator und führen Sie dann den folgenden Befehl aus:

comctl32.ocx
Install-Module SharePointPnPPowerShellOnline -Force

SharePoint Online-Verwaltungsshell

Der Zweck dieses Tools besteht darin, die Berechtigungen für das OneDrive-Konto der Benutzer zu ändern.

Laden Sie es kostenlos herunter und installieren Sie es unter microsoft.com .

MSOnline V1 Powershell-Modul

Um dieses letzte Modul zu installieren, führen Sie bitte den folgenden Befehl in PowerShell als Administrator aus:

Install-Module MSOnline -Force

So übertragen Sie OneDrive-Dateien auf ein anderes Konto

Um Dateien von Ihrem OneDrive-Konto auf ein anderes zu übertragen, müssen Sie PowerShell öffnen und dann das bereitgestellte Skript ausführen.

Treiberaktualisierungsfehler

Öffnen Sie PowerShell

  Microsoft PowerShell-Suche

Öffnen Sie Visual Studio Code oder PowerShell.

Sie können dies tun, indem Sie auf die Schaltfläche „Suchen“ klicken und dann nach „PowerShell“ suchen.

Klicken Sie dort mit der rechten Maustaste auf die App und wählen Sie dann die Option zum Öffnen des Tools im Admin-Modus aus.

PC-Lösungen Betrug

Führen Sie das Skript aus

  OneDrive PowerShell-Skript

Als nächstes müssen Sie das entsprechende Skript ausführen. Sie finden es am Ende des Artikels.

Wir haben uns dafür entschieden, weil das Drehbuch ziemlich lang ist.

Nachdem Sie das Skript hinzugefügt haben, drücken Sie die Eingabetaste auf Ihrer Tastatur.

Übertragen Sie die Dateien

Schließlich ist es nun an der Zeit, die Dateien auf ein anderes OneDrive-Konto zu übertragen.

Sie sehen, direkt nach dem Drücken der Eingabetaste werden Sie aufgefordert, das E-Mail-Konto hinzuzufügen Der Benutzername des abgehenden Benutzers .

Sie werden auch brauchen Der Benutzername des Zielbenutzers . Dies ist der OneDrive-Benutzer, an den die Dateien kopiert und übertragen werden.

Animator vs Animationsprogramm

Abschließend werden Sie aufgefordert, etwas hinzuzufügen Der Benutzername Ihres Office 365-Administrators .

Warten Sie, bis das Skript seine Aufgabe erledigt hat, bevor Sie das Empfängerkonto überprüfen, um festzustellen, ob die Dateien korrekt übertragen wurden.

Kopieren Sie das folgende Skript und fügen Sie es ein:

$departinguser = Read-Host "Enter departing user's email"
$destinationuser = Read-Host "Enter destination user's email"
$globaladmin = Read-Host "Enter the username of your Global Admin account"
$credentials = Get-Credential -Credential $globaladmin
Connect-MsolService -Credential $credentials
$InitialDomain = Get-MsolDomain | Where-Object {$_.IsInitial -eq $true}
  
$SharePointAdminURL = "https://$($InitialDomain.Name.Split(".")[0])-admin.sharepoint.com"
  
$departingUserUnderscore = $departinguser -replace "[^a-zA-Z]", "_"
$destinationUserUnderscore = $destinationuser -replace "[^a-zA-Z]", "_"
  
$departingOneDriveSite = "https://$($InitialDomain.Name.Split(".")[0])-my.sharepoint.com/personal/$departingUserUnderscore"
$destinationOneDriveSite = "https://$($InitialDomain.Name.Split(".")[0])-my.sharepoint.com/personal/$destinationUserUnderscore"
Write-Host "`nConnecting to SharePoint Online" -ForegroundColor Blue
Connect-SPOService -Url $SharePointAdminURL -Credential $credentials
  
Write-Host "`nAdding $globaladmin as site collection admin on both OneDrive site collections" -ForegroundColor Blue
# Set current admin as a Site Collection Admin on both OneDrive Site Collections
Set-SPOUser -Site $departingOneDriveSite -LoginName $globaladmin -IsSiteCollectionAdmin $true
Set-SPOUser -Site $destinationOneDriveSite -LoginName $globaladmin -IsSiteCollectionAdmin $true
Write-Host "`nConnecting to $departinguser's OneDrive via SharePoint Online PNP module" -ForegroundColor Blue
Connect-PnPOnline -Url $departingOneDriveSite -Credentials $credentials
Write-Host "`nGetting display name of $departinguser" -ForegroundColor Blue
# Get name of departing user to create folder name.
$departingOwner = Get-PnPSiteCollectionAdmin | Where-Object {$_.loginname -match $departinguser}
# If there's an issue retrieving the departing user's display name, set this one.
 if  ($departingOwner -contains $null) {
    $departingOwner = @{
        Title = "Departing User"
    }
}
  
# Define relative folder locations for OneDrive source and destination
$departingOneDrivePath = "/personal/$departingUserUnderscore/Documents"
$destinationOneDrivePath = "/personal/$destinationUserUnderscore/Documents/$($departingOwner.Title)'s Files"
$destinationOneDriveSiteRelativePath = "Documents/$($departingOwner.Title)'s Files"
  
Write-Host "`nGetting all items from $($departingOwner.Title)" -ForegroundColor Blue
# Get all items from source OneDrive
$items = Get-PnPListItem -List Documents -PageSize 1000
$largeItems = $items | Where-Object {[long]$_.fieldvalues.SMTotalFileStreamSize -ge 261095424 -and $_.FileSystemObjectType -contains "File"}
 if  ($largeItems) {
    $largeexport = @()
     foreach  ($item  in  $largeitems) {
        $largeexport += "$(Get-Date) - Size: $([math]::Round(($item.FieldValues.SMTotalFileStreamSize / 1MB),2)) MB Path: $($item.FieldValues.FileRef)"
        Write-Host "File too large to copy: $($item.FieldValues.FileRef)" -ForegroundColor DarkYellow
    }
    $largeexport | Out-file C:\temp\largefiles.txt -Append
    Write-Host "A list of files too large to be copied from $($departingOwner.Title) have been exported to C:\temp\LargeFiles.txt" -ForegroundColor Yellow
}
$rightSizeItems = $items | Where-Object {[long]$_.fieldvalues.SMTotalFileStreamSize -lt 261095424 -or $_.FileSystemObjectType -contains "Folder"}
Write-Host "`nConnecting to $destinationuser via SharePoint PNP PowerShell module" -ForegroundColor Blue
Connect-PnPOnline -Url $destinationOneDriveSite -Credentials $credentials
Write-Host "`nFilter by folders" -ForegroundColor Blue
# Filter by Folders to create directory structure
$folders = $rightSizeItems | Where-Object {$_.FileSystemObjectType -contains "Folder"}
  
Write-Host "`nCreating Directory Structure" -ForegroundColor Blue
 foreach  ($folder  in  $folders) {
    $path = ('{0}{1}' -f $destinationOneDriveSiteRelativePath, $folder.fieldvalues.FileRef).Replace($departingOneDrivePath, '')
    Write-Host "Creating folder in $path" -ForegroundColor Green
    $newfolder = Ensure-PnPFolder -SiteRelativePath $path
}
  
Write-Host "`nCopying Files" -ForegroundColor Blue
$files = $rightSizeItems | Where-Object {$_.FileSystemObjectType -contains "File"}
$fileerrors = ""
foreach ($file in $files) {
    $destpath = ("$destinationOneDrivePath$($file.fieldvalues.FileDirRef)").Replace($departingOneDrivePath, "")
    Write-Host "Copying $($file.fieldvalues.FileLeafRef) to $destpath" -ForegroundColor Green
    $newfile = Copy-PnPFile -SourceUrl $file.fieldvalues.FileRef -TargetUrl $destpath -OverwriteIfAlreadyExists -Force -ErrorVariable errors -ErrorAction SilentlyContinue
    $fileerrors += $errors
}
$fileerrors | Out-File c:\temp\fileerrors.txt
# Remove Global Admin from Site Collection Admin role for both users
Write-Host "`nRemoving $globaladmin from OneDrive site collections" -ForegroundColor Blue
Set-SPOUser -Site $departingOneDriveSite -LoginName $globaladmin -IsSiteCollectionAdmin $false
Set-SPOUser -Site $destinationOneDriveSite -LoginName $globaladmin -IsSiteCollectionAdmin $false
Write-Host "`nComplete!" -ForegroundColor Green

Das Skript finden Sie hier Reddit-Seite .

LESEN : So exportieren Sie CSV in PowerShell unter Windows

Kann PowerShell auf OneDrive zugreifen?

Mit SharePoint Online PowerShell können Benutzer mithilfe des PowerShell-Tools eine Verbindung zu einem anderen OneDrive-Konto herstellen. Sie werden aufgefordert, Ihr Passwort einzugeben, damit PowerShell mithilfe von Cmdlets mit der Arbeit an Ihren OneDrive-Konten beginnen kann.

Können externe Benutzer auf OneDrive zugreifen?

Auf Ihr OneDrive-Konto können externe Benutzer zugreifen, jedoch nur, wenn Sie dies zulassen. Benutzer können für immer oder für einen festgelegten Zeitraum Zugriff auf Ihre Dateien haben. Sie können auch die Möglichkeiten einschränken.

Wie kopiere ich Dateien vom OneDrive einer anderen Person?

Wenn Sie Dateien vom OneDrive einer anderen Person kopieren möchten, haben Sie folgende Möglichkeiten:

  • Öffnen Sie OneDrive in Ihrem Browser über den Link, wählen Sie die Dateien aus, die Sie kopieren möchten, und klicken Sie auf Herunterladen. Dadurch wird es auf Ihren Computer heruntergeladen.
  • Öffnen Sie das OneDrive-Konto über den Link, wählen Sie die Dateien aus, die Sie kopieren möchten, und klicken Sie auf Kopieren nach.

Das ist es!

  So übertragen Sie OneDrive-Dateien über PowerShell an einen anderen Benutzer
Beliebte Beiträge