PowerShell base operate about document

來源:互聯網
上載者:User

使用PowerShell建立一個文件庫

文件庫的操作和操作的列表是類似的,在這一章將會介紹如果建立一個文件庫,上傳一個檔案到文件庫中

建立一個文件庫,我們同樣需要使用SPListCollection中的Add()方法,

PS>$spWeb=Get-SPWeb-Identityhttp://SPServer

PS>$listTemplate=[Microsoft.SharePoint.SPListTemplateType]::DocumentLibrary

PS>$spWeb.Lists.Add("My Documents","My
Doc Library",$listTemplate)

使用PowerShell更新一個文件庫

我們可以通過GetList()方法查詢到我們需要的文件庫,

PS>$spDocumentLibrary=$spWeb.GetList("My
Documents")

下面我們來修改這個文件庫的一些屬性資訊,比如文件庫的說明和是否在快速啟動中顯示。

PS>$spDocumentLibrary.Description=“Description”

PS>$spDocumentLibrary.OnQuickLaunch=
"True"

PS>$spDocumentLibrary.Update()

在SharePoint文件庫中可能會存在檔案夾,使用檔案夾可以更有效管理文件庫中的檔案。如果我們要在文件庫中建立檔案夾,可以使用AddItem方法,就像我們在列表中建立一個清單項目一樣。但不同的是我們需要重載另外一個AddItem方法,也就是說我們需要在方法中添加
Microsoft.SharePoint.SPFileSystemObjectType,來聲明我們添加的是一個檔案或者是一個檔案夾。

PS>$spFolder=$spDocumentLibrary.AddItem(

>> "",[Microsoft.SharePoint.SPFileSystemObjectType]::Folder,"My New Folder"

>>)
PS>$spFolder.Update()

使用PowerShell上傳一個檔案到文件庫

上傳檔案到文件庫中,我們需要使用Microsoft.SharePoint.SPFlieCollection類中的Add方法,這個類表示一個檔案的集合。

在我們擷取檔案集合之前,還需要通過Microsoft.SharePoint.SPWeb類中的GetFolder()方法返回的Microsoft.SharePoint.SPFolder,我們要這個類型初始化一個物件變數。

PS>$spFolder=$spWeb.GetFolder("My
Documents")

此時我們就可以向這個檔案集合中添加檔案了。

PS>$spFileCollection=$spFolder.Files

在Microsoft.SharePoint.SPFileCollection類中提供了一個Add方法,用來向檔案集合中添加一個檔案,這是一個非常通用的方法,有21種重載的定義。我們將會應用的其中一種,我們需要一個檔案的絕對位址,檔案位元組數組,還有一個Bool類型的值,表示在有同名檔案時,是否要覆蓋。

我們需要先使用Get-ChildItem方法類擷取到檔案。然後可以通過使用System.IO.FileStream類中提供的放法OpenRead(),來擷取檔案的位元組數組。

PS>$file=Get-ChildItemC:/Documents/MyDoc.docx

PS>$spFileCollection.Add("My Documents/MyDoc.docx",$file.OpenRead(),$false)

當然我們也同時可以上傳多個文檔到SharePoint文件庫中。

PS>Get-ChildItemC:/Documents-filter“*.docx”|ForEach-Object{

>>$spFileCollection.Add(“MyDocuments/$($_.Name)”,$_.OpenRead(),$true)

>>}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.