SharePoint Online: PowerShell kullanarak Dosya İndirme


Gereksinim: PowerShell'i kullanarak SharePoint Online'dan bir Dosya indirin.

SharePoint Çevrimiçi Kitaplığından Dosya Nasıl İndirilir?

SharePoint Online'dan dosya indirmek oldukça basittir. SharePoint Online'dan bir dosya indirmeniz gerekiyorsa, belgeyi içeren siteye göz atın, sağ tıklayın ve menü çubuğunda 'İndir'i seçin; bu kadar basit. Yerel makinenizden herhangi bir bağlantı olmadan, sizinle paylaşılan bir belgeye erişmeniz gerekiyorsa bu yararlı olabilir. SharePoint Online'dan nasıl belge indirebilirim? Bir dosyanın nasıl indirileceğine ilişkin adım adım talimatları görelim.

Kitaplıktan bir dosya indirmek için şu adımları izleyin:

  1. SharePoint Online sitesinde oturum açın >> İstediğiniz dosyanın bulunduğu kitaplığa gidin.
  2. Dosyaya sağ tıklayın ve içerik menüsünden “İndir” seçeneğini seçin.

  3. Bu size "Kaydet" istemini verir ve dosya, istemci makinenizin İndirilenler dizinine kaydedilir.
  4. Modern Kütüphanelerde, dosya(lar)ı veya klasörü seçip araç çubuğundan “İndir” düğmesine basabilirsiniz. Ayrıca aynı anda birden fazla dosya indirebilirsiniz.

Hepsini seçin ve araç çubuğundaki “İndir” düğmesine tıklayın. Bu, seçilen tüm dosyaları daha sonra bilgisayarınıza çıkarabileceğiniz bir .zip dosyası olarak indirecektir.

Herhangi bir belge kitaplığını veya klasörü “Dosya Gezgini” görünümünde açabilir ve indirmek için dosyaları yerel makinenize kopyalayıp yapıştırmanız yeterlidir! Kütüphanedeki tüm dosyaları/klasörleri bilgisayarınıza indirmek için “Senkronizasyon” seçeneğini de kullanabilirsiniz.

Şimdi, PowerShell kullanarak SharePoint Online'dan dosya nasıl indirilir? İşte SharePoint Online'dan bir dosya indirmek için PowerShell betiği!

Kitaplıktan Dosya İndirmek için SharePoint Çevrimiçi PowerShell

PowerShell kullanarak SharePoint Online belge kitaplığından belgeleri indirelim. Bu CSOM PowerShell betiği, SharePoint Online belge kitaplığından (veya herhangi bir kitaplıktan!) bir dosya indirir. Şu parametreleri gerektirir: Sitenin URL'si, dosyanın sunucuya göre URL'si ve yerel yol. Komut dosyasının yalnızca kullanıcının siteye ve kitaplığa erişim için yeterli izne sahip olması durumunda çalışacağını unutmamak önemlidir.


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"

#Function to copy a given sourcefile to downloadpath
Function Download-FileFromLibrary()
{ 
    param
    (
        [Parameter(Mandatory=$true)] [string] $SiteURL,
        [Parameter(Mandatory=$true)] [string] $SourceFileURL,
        [Parameter(Mandatory=$true)] [string] $TargetFilePath
    )

    Try {
        #Setup Credentials to connect
        $Cred= Get-Credential
        $Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)

        #Setup the context
        $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
        $Ctx.Credentials = $Credentials
    
        #sharepoint online powershell download file from library
        $FileInfo = [Microsoft.SharePoint.Client.File]::OpenBinaryDirect($Ctx,$SourceFileURL)
        $WriteStream = [System.IO.File]::Open($TargetFilePath,[System.IO.FileMode]::Create)
        $FileInfo.Stream.CopyTo($WriteStream)
        $WriteStream.Close()

        Write-host -f Green "File '$SourceFileURL' Downloaded to '$TargetFilePath' Successfully!" $_.Exception.Message
  }
    Catch {
        write-host -f Red "Error Downloading File!" $_.Exception.Message
    }
}

#Set parameter values
$SiteURL="https://crescent.sharepoint.com/sites/sales"
$SourceFileURL="/sites/Sales/Shared Documents/Crescent Legal App Requirements.docx"  #Server Relative URL 
$TargetFilePath="C:\Temp\LegalDoc.docx"

#Call the function to download file
Download-FileFromLibrary -SiteURL $SiteURL -SourceFileURL $SourceFileURL -TargetFilePath $TargetFilePath

SharePoint Online belge kitaplığından tüm dosyaları indirmek için şu betiği kullanın: SharePoint Online, PowerShell'i kullanarak birden fazla dosya indirin

PnP PowerShell kullanarak SharePoint Online'dan Dosya İndirme

PowerShell ile dosyaları SharePoint Online'dan yerel bir diske kopyalayabiliriz. İşte SharePoint Online'dan bir dosya indirmek için PnP PowerShell:


#Config Variables
$SiteURL = "https://crescent.sharepoint.com/sites/retail"
$FileServerRelativeURL = "/sites/Retail/Shared%20Documents/DocumentsInventory.csv"
$DestinationFolder ="C:\Temp"

Try {
     #Check if the Destination Folder exists. If not, create the folder for targetfile
     If(!(Test-Path -Path $DestinationFolder))
     {
        New-Item -ItemType Directory -Path $DestinationFolder | Out-Null
        Write-host -f Yellow "Created a New Folder '$DestinationFolder'"
     }

    #Connect to PnP Online
    Connect-PnPOnline -Url $SiteURL -Interactive
    
    #Check if File exists
    $File = Get-PnPFile -Url $FileServerRelativeURL -ErrorAction SilentlyContinue
    If($File -ne $Null)
    {
        #Download file from sharepoint online
        Get-PnPFile -Url $FileServerRelativeURL -Path $DestinationFolder -Filename $File.Name -AsFile -Force
        Write-host "File Downloaded Successfully!" -f Green
    }
    Else
    {
        Write-host "Could not Find File at "$FileServerRelativeURL -f Red
    }
}
Catch {
    write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}

Bu PowerShell, dosyayı istemsiz olarak SharePoint Online'dan yerel olarak kopyalar. Get-PnPFile cmdlet'inde ayrıca FileName vb. gibi başka parametreler de bulunur. Burada PowerShell kullanarak SharePoint Online belge kitaplığından bir CSV dosyasının nasıl indirilip okunacağına ilişkin bir örnek verilmiştir:


#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/retail"
$FileServerRelativeURL = "/sites/retail/Invoices/MonthlyRpt.csv"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive

$DownloadPath = $env:TEMP
$FileName = Split-Path $FileServerRelativeURL -leaf

#Download file from sharepoint online to Temp Folder
Get-PnPFile -Url $FileServerRelativeURL -Path $DownloadPath -Filename $FileName -AsFile -Force

#Import the CSV file
$CSVFile = Import-Csv -Path $env:TEMP\$FileName

PowerShell kullanarak SharePoint'ten nasıl klasör indirebilirim? PowerShell'i kullanarak SharePoint Online'dan bir klasör indirmek için şunu kullanın: SharePoint Online'dan Klasör İndirmek için PowerShell

Sıkça Sorulan Sorular:

Bir SharePoint sitesinden tüm dosyaları nasıl indiririm?

Bir SharePoint sitesindeki tüm kitaplıklardaki tüm dosyaları indirmek için “Dosya Gezgini” görünümünü kullanın. Öncelikle indirmek istediğiniz belge kitaplığına veya klasöre gidin. Daha sonra “Kütüphane” sekmesine tıklayın ve “Explorer ile Aç”ı seçin. Bu, tüm dosyaları seçebileceğiniz ve bunları bilgisayarınızdaki yerel bir klasöre sürükleyebileceğiniz bir Windows Gezgini penceresi açacaktır.
Alternatif olarak PowerShell komut dosyasını kullanabilirsiniz: Bir SharePoint Sitesinden Tüm Dosyalar Nasıl İndirilir?

SharePoint Online kitaplığından tüm dosyaları nasıl indiririm?

SharePoint Online belge kitaplığından tüm dosyaları indirmek için SharePoint belge kitaplığınıza göz atın >> Tüm Dosyaları ve klasörleri seçin. Araç çubuğundan “İndir” düğmesine tıklayın. Belge kitaplığını indirmek için alternatif seçenekler olarak "Dosya Gezgini görünümünü" veya PowerShell'i kullanabilirsiniz.
Daha fazla bilgi: SharePoint Online'da Belge Kitaplığı Nasıl İndirilir?

SharePoint Classic'ten birden fazla dosyayı nasıl indirebilirim?

SharePoint Online sitelerinden dosya indirmek için “Dosya Gezgini” görünümünü veya OneDrive senkronizasyon istemcisini kullanın. Birden fazla dosya indirmek için PowerShell'i de kullanabilirsiniz.

SharePoint'te indirme izinlerini nasıl kapatabilirim?

SharePoint'te indirme izinlerini devre dışı bırakmak için Kullanıcılara "Kısıtlı Görünüm" (veya "Yalnızca Görüntüleme") İzni verebilirsiniz, bu da kullanıcıların dosya indirmesini engelleyecektir. Belirli dosyalara erişimi kısıtlamak ve bunların indirilmesini veya yazdırılmasını önlemek için Bilgi Hakları Yönetimi'ni (IRM) de kullanabilirsiniz. Daha fazla bilgi: SharePoint belge kitaplığında indirme nasıl engellenir?

İlgili makaleler