Set-AzStorageFileContent
上傳檔案的內容。
語法
Set-AzStorageFileContent
[-ShareName] <String>
[-Source] <String>
[[-Path] <String>]
[-PassThru]
[-Force]
[-AsJob]
[-DisAllowTrailingDot]
[-Context <IStorageContext>]
[-ServerTimeoutPerRequest <Int32>]
[-ClientTimeoutPerRequest <Int32>]
[-DefaultProfile <IAzureContextContainer>]
[-ConcurrentTaskCount <Int32>]
[-WhatIf]
[-Confirm]
[-PreserveSMBAttribute]
[<CommonParameters>]
Set-AzStorageFileContent
[-Share] <CloudFileShare>
[-ShareClient <ShareClient>]
[-Source] <String>
[[-Path] <String>]
[-PassThru]
[-Force]
[-AsJob]
[-Context <IStorageContext>]
[-ServerTimeoutPerRequest <Int32>]
[-ClientTimeoutPerRequest <Int32>]
[-DefaultProfile <IAzureContextContainer>]
[-ConcurrentTaskCount <Int32>]
[-WhatIf]
[-Confirm]
[-PreserveSMBAttribute]
[<CommonParameters>]
Set-AzStorageFileContent
[-Directory] <CloudFileDirectory>
[-ShareDirectoryClient <ShareDirectoryClient>]
[-Source] <String>
[[-Path] <String>]
[-PassThru]
[-Force]
[-AsJob]
[-Context <IStorageContext>]
[-ServerTimeoutPerRequest <Int32>]
[-ClientTimeoutPerRequest <Int32>]
[-DefaultProfile <IAzureContextContainer>]
[-ConcurrentTaskCount <Int32>]
[-WhatIf]
[-Confirm]
[-PreserveSMBAttribute]
[<CommonParameters>]
Description
Set-AzStorageFileContent Cmdlet 會將檔案的內容上傳至指定共用上的檔案。
範例
範例 1:上傳目前資料夾中的檔案
Set-AzStorageFileContent -ShareName "ContosoShare06" -Source "DataFile37" -Path "ContosoWorkingFolder/CurrentDataFile"
此命令會將目前資料夾中名為 DataFile37 的檔案上傳為名為 ContosoWorkingFolder 資料夾中 CurrentDataFile 的檔案。
範例 2:上傳目前資料夾中的所有檔案
$CurrentFolder = (Get-Item .).FullName
$Container = Get-AzStorageShare -Name "ContosoShare06"
Get-ChildItem -Recurse | Where-Object { $_.GetType().Name -eq "FileInfo"} | ForEach-Object {
$path=$_.FullName.Substring($Currentfolder.Length+1).Replace("\","/")
Set-AzStorageFileContent -Share $Container -Source $_.FullName -Path $path -Force
}
此範例會使用數個常見的 Windows PowerShell Cmdlet 和目前的 Cmdlet,將所有檔案從目前資料夾上傳至容器 ContosoShare06 的根資料夾。
第一個命令會取得目前資料夾的名稱,並將它儲存在$CurrentFolder變數中。
第二個命令會 使用 Get-AzStorageShare Cmdlet 來取得名為 ContosoShare06 的檔案共享,然後將它儲存在 $Container 變數中。
最後一個命令會取得目前資料夾的內容,並使用管線運算符將每個資料夾傳遞至 Where-Object Cmdlet。
該 Cmdlet 會篩選出不是檔案的物件,然後將檔案傳遞至 ForEach-Object Cmdlet。
該 Cmdlet 會針對每個檔案執行腳本區塊,該檔案會為其建立適當的路徑,然後使用目前的 Cmdlet 來上傳檔案。
結果與這個範例上傳的其他檔案具有相同的名稱和相對位置。
如需文稿區塊的詳細資訊,請輸入 Get-Help about_Script_Blocks
。
範例 3:將本機檔案上傳至 Azure 檔案,並在 Azure 檔案中保留本機檔案 SMB 屬性(檔案屬性、檔案建立時間、檔案上次寫入時間)。
Set-AzStorageFileContent -Source $localFilePath -ShareName sample -Path "dir1/file1" -PreserveSMBAttribute
此範例會將本機檔案上傳至 Azure 檔案,並在 Azure 檔案中保留本機檔案 SMB 屬性(檔案屬性、檔案建立時間、檔案上次寫入時間)。
參數
-AsJob
在背景中執行 Cmdlet。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ClientTimeoutPerRequest
指定一個服務要求的用戶端超時時間間隔,以秒為單位。 如果先前的呼叫在指定的間隔內失敗,此 Cmdlet 會重試要求。 如果此 Cmdlet 在間隔經過之前未收到成功的回應,此 Cmdlet 會傳回錯誤。
類型: | Nullable<T>[Int32] |
別名: | ClientTimeoutPerRequestInSeconds |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ConcurrentTaskCount
指定並行網路呼叫上限。 您可以藉由指定並行網路呼叫數目上限,使用此參數來限制並行 CPU 和頻寬使用量的並行存取。 指定的值是絕對計數,不會乘以核心計數。 此參數可協助減少低頻寬環境中的網路連線問題,例如每秒 100 千位。 預設值為 10。
類型: | Nullable<T>[Int32] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Context
指定 Azure 記憶體內容。 若要取得記憶體內容,請使用 New-AzStorageContext Cmdlet。
類型: | IStorageContext |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-DefaultProfile
用於與 Azure 通訊的認證、帳戶、租用戶和訂用帳戶。
類型: | IAzureContextContainer |
別名: | AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Directory
將資料夾指定為 CloudFileDirectory 物件。 此 Cmdlet 會將檔案上傳至此參數所指定的資料夾。 若要取得目錄,請使用 New-AzStorageDirectory Cmdlet。 您也可以使用 Get-AzStorageFile Cmdlet 來取得目錄。
類型: | CloudFileDirectory |
別名: | CloudFileDirectory |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-DisAllowTrailingDot
不允許尾端點 (.) 後置詞目錄和檔名。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Force
指出此 Cmdlet 會覆寫現有的 Azure 記憶體檔案。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PassThru
指出此 Cmdlet 會 傳回它所建立或上傳的 AzureStorageFile 物件。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Path
指定檔案或資料夾的路徑。 此 Cmdlet 會將內容上傳至此參數所指定的檔案,或上傳至此參數所指定資料夾中的檔案。 如果您指定資料夾,此 Cmdlet 會建立與來源檔案同名的檔案。 如果您指定不存在的檔案路徑,此 Cmdlet 會建立該檔案,並將內容儲存至該檔案。 如果您指定已經存在的檔案,而且您指定 Force 參數,則此 Cmdlet 會覆寫檔案的內容。 如果您指定已經存在且未指定 Force 的檔案,則此 Cmdlet 不會變更,並傳回錯誤。 如果您指定不存在的資料夾路徑,此 Cmdlet 不會變更,並傳回錯誤。
類型: | String |
Position: | 2 |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PreserveSMBAttribute
將來源檔案 SMB 屬性 (檔案屬性、檔案建立時間、檔案上次寫入時間)保留在目的地檔案中。 此參數僅適用於 Windows。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ServerTimeoutPerRequest
指定要求的伺服器部分逾時期間長度。
類型: | Nullable<T>[Int32] |
別名: | ServerTimeoutPerRequestInSeconds |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Share
指定 CloudFileShare 物件。 這個 Cmdlet 會上傳至檔案共用中的檔案,此參數會指定。 若要取得 CloudFileShare 物件,請使用 Get-AzStorageShare Cmdlet。 這個物件包含記憶體內容。 如果您指定此參數,請勿指定 Context 參數。
類型: | CloudFileShare |
別名: | CloudFileShare |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ShareClient
ShareClient 物件指出將上傳檔案的共用。
類型: | ShareClient |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ShareDirectoryClient
CloudFileDirectory 物件指出要上傳檔案的雲端目錄。
類型: | ShareDirectoryClient |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ShareName
指定檔案共享的名稱。 這個 Cmdlet 會上傳至檔案共用中的檔案,此參數會指定。
類型: | String |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-Source
指定此 Cmdlet 上傳的來源檔案。 如果您指定不存在的檔案,此 Cmdlet 會傳回錯誤。
類型: | String |
別名: | FullName |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |