ค้นหาเว็บไซต์

SharePoint Online: ดาวน์โหลดไฟล์โดยใช้ PowerShell


ข้อกำหนด: ดาวน์โหลดไฟล์จาก SharePoint Online โดยใช้ PowerShell

จะดาวน์โหลดไฟล์จากไลบรารี SharePoint Online ได้อย่างไร

การดาวน์โหลดไฟล์จาก SharePoint Online ค่อนข้างตรงไปตรงมา หากคุณต้องการดาวน์โหลดไฟล์จาก SharePoint Online เพียงเรียกดูไซต์ที่มีเอกสาร คลิกขวาที่เอกสาร แล้วเลือก "ดาวน์โหลด" ในแถบเมนู ง่ายมาก สิ่งนี้มีประโยชน์หากคุณต้องการเข้าถึงเอกสารที่แชร์กับคุณ โดยไม่ต้องเชื่อมต่อจากเครื่องของคุณ ฉันจะดาวน์โหลดเอกสารจาก SharePoint Online ได้อย่างไร มาดูคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการดาวน์โหลดไฟล์

หากต้องการดาวน์โหลดไฟล์จากไลบรารี ให้ทำตามขั้นตอนเหล่านี้:

  1. ลงชื่อเข้าใช้ไซต์ SharePoint Online >> นำทางไปยังไลบรารีซึ่งเป็นที่ตั้งของไฟล์ที่คุณต้องการ
  2. คลิกขวาที่ไฟล์และเลือกตัวเลือก "ดาวน์โหลด" จากเมนูบริบท

  3. คุณจะได้รับข้อความแจ้งว่า "บันทึก" และไฟล์จะถูกบันทึกลงในไดเร็กทอรีดาวน์โหลดของเครื่องไคลเอ็นต์ของคุณ
  4. ใน Modern Libraries คุณสามารถเลือกไฟล์หรือโฟลเดอร์แล้วกดปุ่ม "ดาวน์โหลด" จากแถบเครื่องมือ คุณยังสามารถดาวน์โหลดไฟล์หลายไฟล์พร้อมกันได้

เลือกทั้งหมดแล้วคลิกปุ่ม "ดาวน์โหลด" ในแถบเครื่องมือ การดำเนินการนี้จะดาวน์โหลดไฟล์ที่เลือกทั้งหมดเป็นไฟล์ .zip ซึ่งคุณสามารถแตกไฟล์ลงในคอมพิวเตอร์ของคุณได้

คุณสามารถเปิดไลบรารีเอกสารหรือโฟลเดอร์ในมุมมอง “File Explorer” และเพียงคัดลอกและวางไฟล์ลงในเครื่องของคุณเพื่อดาวน์โหลด! คุณยังสามารถใช้ตัวเลือก "ซิงค์" เพื่อดาวน์โหลดไฟล์/โฟลเดอร์ทั้งหมดจากไลบรารีไปยังคอมพิวเตอร์ของคุณ

ตอนนี้ จะดาวน์โหลดไฟล์จาก SharePoint Online โดยใช้ PowerShell ได้อย่างไร นี่คือสคริปต์ PowerShell เพื่อดาวน์โหลดไฟล์จาก SharePoint Online!

SharePoint Online PowerShell เพื่อดาวน์โหลดไฟล์จากไลบรารี

มาดาวน์โหลดเอกสารจากไลบรารีเอกสาร SharePoint Online โดยใช้ PowerShell กัน สคริปต์ CSOM PowerShell นี้จะดาวน์โหลดไฟล์จากไลบรารีเอกสาร SharePoint Online (หรือไลบรารีใดๆ!) จำเป็นต้องมีพารามิเตอร์ต่อไปนี้: URL ของไซต์, URL สัมพันธ์ของเซิร์ฟเวอร์ของไฟล์ และเส้นทางในเครื่อง สิ่งสำคัญคือต้องทราบว่าสคริปต์จะทำงานก็ต่อเมื่อผู้ใช้มีสิทธิ์เพียงพอในการเข้าถึงไซต์และห้องสมุด


#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 ให้ใช้สคริปต์นี้: SharePoint Online ดาวน์โหลดไฟล์หลายไฟล์โดยใช้ PowerShell

ดาวน์โหลดไฟล์จาก SharePoint Online โดยใช้ PnP PowerShell

เราสามารถคัดลอกไฟล์จาก SharePoint Online ไปยังดิสก์ภายในเครื่องด้วย PowerShell นี่คือ PnP PowerShell เพื่อดาวน์โหลดไฟล์จาก SharePoint Online:


#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
}

PowerShell นี้คัดลอกไฟล์ภายในเครื่องจาก SharePoint Online โดยไม่ต้องพร้อมท์ Get-PnPFile cmdlet ยังมีพารามิเตอร์อื่นๆ เช่น FileName เป็นต้น ต่อไปนี้คือตัวอย่างวิธีการดาวน์โหลดและอ่านไฟล์ CSV จากไลบรารีเอกสาร SharePoint Online โดยใช้ PowerShell:


#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

ฉันจะดาวน์โหลดโฟลเดอร์จาก SharePoint โดยใช้ PowerShell ได้อย่างไร เมื่อต้องการดาวน์โหลดโฟลเดอร์จาก SharePoint Online โดยใช้ PowerShell ให้ใช้: PowerShell เพื่อดาวน์โหลดโฟลเดอร์จาก SharePoint Online

คำถามที่พบบ่อย:

ฉันจะดาวน์โหลดไฟล์ทั้งหมดจากไซต์ SharePoint ได้อย่างไร

หากต้องการดาวน์โหลดไฟล์ทั้งหมดจากไลบรารีทั้งหมดบนไซต์ SharePoint ให้ใช้มุมมอง "File Explorer" ขั้นแรก นำทางไปยังไลบรารีเอกสารหรือโฟลเดอร์ที่คุณต้องการดาวน์โหลด จากนั้นคลิกที่แท็บ "Library" และเลือก "Open with Explorer" ซึ่งจะเป็นการเปิดหน้าต่าง Windows Explorer ซึ่งคุณสามารถเลือกไฟล์ทั้งหมดแล้วลากไปยังโฟลเดอร์ในเครื่องคอมพิวเตอร์ของคุณ
หรืออีกวิธีหนึ่ง คุณสามารถใช้สคริปต์ PowerShell: จะดาวน์โหลดไฟล์ทั้งหมดจากไซต์ SharePoint ได้อย่างไร

ฉันจะดาวน์โหลดไฟล์ทั้งหมดจากไลบรารี SharePoint Online ได้อย่างไร

เมื่อต้องการดาวน์โหลดไฟล์ทั้งหมดจากไลบรารีเอกสาร SharePoint Online ให้เรียกดูไลบรารีเอกสาร SharePoint ของคุณ >> เลือกไฟล์และโฟลเดอร์ทั้งหมด คลิกที่ปุ่ม "ดาวน์โหลด" จากแถบเครื่องมือ คุณสามารถใช้ “มุมมอง File Explorer” หรือ PowerShell เป็นตัวเลือกอื่นในการดาวน์โหลดไลบรารีเอกสารได้
ข้อมูลเพิ่มเติม: วิธีดาวน์โหลดไลบรารีเอกสารใน SharePoint Online

ฉันจะดาวน์โหลดไฟล์หลายไฟล์จาก SharePoint Classic ได้อย่างไร

ใช้มุมมอง “File Explorer” หรือไคลเอ็นต์การซิงค์ OneDrive เพื่อดาวน์โหลดไฟล์จากไซต์ SharePoint Online คุณยังสามารถใช้ PowerShell เพื่อดาวน์โหลดไฟล์หลายไฟล์ได้

ฉันจะปิดสิทธิ์การดาวน์โหลดใน SharePoint ได้อย่างไร

หากต้องการปิดใช้งานสิทธิ์การดาวน์โหลดใน SharePoint คุณสามารถให้สิทธิ์ "มุมมองที่จำกัด" (หรือ "ดูเท่านั้น") แก่ผู้ใช้ ซึ่งจะป้องกันไม่ให้ผู้ใช้ดาวน์โหลดไฟล์ คุณยังสามารถใช้การจัดการสิทธิ์ในข้อมูล (IRM) เพื่อจำกัดการเข้าถึงไฟล์บางไฟล์และป้องกันไม่ให้ดาวน์โหลดหรือพิมพ์ ข้อมูลเพิ่มเติม: จะป้องกันการดาวน์โหลดในไลบรารีเอกสาร SharePoint ได้อย่างไร

บทความที่เกี่ยวข้อง