将文件上载到Azure存储文件共享的脚本

时间:2018-03-01 15:03:51

标签: file azure storage share

情况: 我刚刚创建了一个Azure存储文件共享,我想出了如何通过脚本(C#)将文件上传到Azure BLOB存储。

问题: 我想通过脚本将文件上传到我的Azure存储文件共享(而不是BLOB)。我已经安装了Azure CLI,但问题是我必须首先登录(az登录)才能采取任何行动。

有没有办法将文件从基于我的PC的文件夹上传到Azure存储文件共享(testuser.file.core.windows.net \ test)而不安装它?

非常感谢。

2 个答案:

答案 0 :(得分:0)

多重是为了实现这一目标。如果您只有登录部分的问题,那么您可以使用服务主体和证书自动登录。

例如

az login --service-principal -u http://azure-cli-2016-08-05-14-31-15 -p ~/mycertfile.pem --tenant contoso.onmicrosoft.com

您可以使用

查看更多选项

az login -h

enter image description here

希望这有帮助。

答案 1 :(得分:0)

  

有没有办法将文件从基于我的PC的文件夹上传到Azure存储文件共享(testuser.file.core.windows.net \ test)而不安装它?

是的,我们也可以使用C#代码将文件上传到azure文件存储。请尝试使用以下代码。

 CloudStorageAccount storageAccount = CloudStorageAccount.Parse("storage connection string");
// Create a CloudFileClient object for credentialed access to File storage.
 CloudFileClient fileClient = storageAccount.CreateCloudFileClient();

 // Get a reference to the file share we created previously.
 CloudFileShare share = fileClient.GetShareReference("test");

 share.CreateIfNotExists();

 CloudFile cloudFile = share.GetRootDirectoryReference().GetFileReference("fileName");

 Stream fileStream = File.OpenRead(@"localpath");

 cloudFile.UploadFromStream(fileStream);