共用方式為


DataLakeFileSystemClient class

DataLakeFileSystemClient 代表 Azure 儲存體檔案系統的 URL,可讓您操作其目錄和檔案。

Extends

StorageClient

建構函式

DataLakeFileSystemClient(string, Pipeline)

從 URL 和管線建立 DataLakeFileSystemClient 的實例。

DataLakeFileSystemClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

從 URL 和認證建立 DataLakeFileSystemClient 的實例。

屬性

name

目前檔案系統的名稱。

繼承的屬性

accountName
credential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自封裝的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

url

編碼的 URL 字串值。

方法

create(FileSystemCreateOptions)

在指定的帳號下建立新的檔案系統。 如果具有相同名稱的檔案系統已經存在,作業就會失敗。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

createIfNotExists(FileSystemCreateOptions)

在指定的帳號下建立新的檔案系統。 如果具有相同名稱的檔案系統已經存在,則不會變更。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

delete(FileSystemDeleteOptions)

刪除目前的檔案系統。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

deleteIfExists(FileSystemDeleteOptions)

如果存在,請刪除目前的檔案系統。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

exists(FileSystemExistsOptions)

如果此用戶端所代表的檔案系統存在,則傳回 true;否則為 false。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案系統。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增具有相同名稱的新檔案系統。

generateSasUrl(FileSystemGenerateSasUrlOptions)

僅適用于使用共用金鑰認證建構的 DataLakeFileSystemClient。

根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由用戶端的共用金鑰認證所簽署。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

getAccessPolicy(FileSystemGetAccessPolicyOptions)

取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統資料。

警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date (「2018-12-31T03:44:23.8827891Z」) .toISOString () 會取得 「2018-12-31T03:44:23.882Z」。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

getDataLakeLeaseClient(string)

取得管理檔案系統租用的 DataLakeLeaseClient

getDirectoryClient(string)

在目前的檔案系統下建立 DataLakeDirectoryClient 物件。

getFileClient(string)

在目前的檔案系統下建立 DataLakeFileClient 物件。

getProperties(FileSystemGetPropertiesOptions)

傳回指定檔案系統的所有使用者定義中繼資料和系統屬性。

警告: metadata 回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與DataLakeServiceClientincludeMetadata 方法所 listFileSystems 傳回的中繼資料索引鍵不同,此選項會保留其原始大小寫。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

listDeletedPaths(ListDeletedPathsOptions)

傳回非同步反覆運算器,以列出指定檔案系統下目錄和) 檔案 (目錄和檔案的所有路徑。

.byPage () 會傳回可同步反覆運算器,以列出頁面的路徑。

使用語法的 for await 範例:

// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const deletePath of fileSystemClient.listDeletedPaths()) {
  console.log(`Path ${i++}: ${deletePath.name}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = fileSystemClient.listDeletedPaths();
let deletedPathItem = await iter.next();
while (!deletedPathItem.done) {
  console.log(`Path ${i++}: ${deletedPathItem.value.name}`);
  pathItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 20 })) {
  for (const deletePath of response.pathItems) {
    console.log(`Path ${i++}: ${deletePath.name}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = fileSystemClient.listDeletedPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 path names
for (const deletePath of response.deletedPathItems) {
  console.log(`Path ${i++}: ${deletePath.name}`);
}

請參閱https://docs.microsoft.com/rest/api/storageservices/list-blobs

listPaths(ListPathsOptions)

傳回非同步反覆運算器,以列出指定檔案系統下目錄和) 檔案 (目錄和檔案的所有路徑。

.byPage () 會傳回可同步反覆運算器,以列出頁面的路徑。

使用語法的 for await 範例:

// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const path of fileSystemClient.listPaths()) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = fileSystemClient.listPaths();
let pathItem = await iter.next();
while (!pathItem.done) {
  console.log(`Path ${i++}: ${pathItem.value.name}, isDirectory?: ${pathItem.value.isDirectory}`);
  pathItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listPaths().byPage({ maxPageSize: 20 })) {
  for (const path of response.pathItems) {
    console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = fileSystemClient.listPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = fileSystemClient.listPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

請參閱https://docs.microsoft.com/rest/api/storageservices/list-blobs

setAccessPolicy(PublicAccessType, SignedIdentifier<AccessPolicy>[], FileSystemSetAccessPolicyOptions)

設定指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統中的目錄或檔案。

當您設定檔案系統的許可權時,會取代現有的許可權。 如果未提供任何存取權或 containerAcl,將會移除現有的檔案系統 ACL。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

setMetadata(Metadata, FileSystemSetMetadataOptions)

為指定的檔案系統設定一或多個使用者定義的名稱/值組。

如果未提供任何選項,或參數中未定義任何中繼資料,則會移除檔案系統中繼資料。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

undeletePath(string, string, FileSystemUndeletePathOption)

還原虛刪除的路徑。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

建構函式詳細資料

DataLakeFileSystemClient(string, Pipeline)

從 URL 和管線建立 DataLakeFileSystemClient 的實例。

new DataLakeFileSystemClient(url: string, pipeline: Pipeline)

參數

url

string

指向 Azure 儲存體資料湖檔案系統的用戶端字串,例如 「 https://myaccount.dfs.core.windows.net/filesystem" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.dfs.core.windows.net/filesystem?sasString" ;。

pipeline
Pipeline

呼叫 newPipeline () 以建立預設管線,或提供自訂管線。

DataLakeFileSystemClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

從 URL 和認證建立 DataLakeFileSystemClient 的實例。

new DataLakeFileSystemClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

參數

url

string

指向 Azure 儲存體資料湖檔案系統的用戶端字串,例如 「 https://myaccount.dfs.core.windows.net/filesystem" ;。 如果使用 AnonymousCredential,您可以附加 SAS,例如 「 https://myaccount.dfs.core.windows.net/filesystem?sasString" ;。

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自封裝的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

options
StoragePipelineOptions

選擇性。 設定 HTTP 管線的選項。

屬性詳細資料

name

目前檔案系統的名稱。

string name

屬性值

string

繼承的屬性詳細資料

accountName

accountName: string

屬性值

string

繼承自 StorageClient.accountName

credential

例如 AnonymousCredential、StorageSharedKeyCredential 或任何來自封裝的 @azure/identity 認證,以驗證對服務的要求。 您也可以提供實作 TokenCredential 介面的物件。 如果未指定,則會使用 AnonymousCredential。

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

屬性值

繼承自 StorageClient.credential

url

編碼的 URL 字串值。

url: string

屬性值

string

繼承自 StorageClient.url

方法詳細資料

create(FileSystemCreateOptions)

在指定的帳號下建立新的檔案系統。 如果具有相同名稱的檔案系統已經存在,作業就會失敗。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

function create(options?: FileSystemCreateOptions): Promise<FileSystemCreateResponse>

參數

options
FileSystemCreateOptions

選擇性。 建立檔案系統時的選項。

傳回

createIfNotExists(FileSystemCreateOptions)

在指定的帳號下建立新的檔案系統。 如果具有相同名稱的檔案系統已經存在,則不會變更。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/create-container

function createIfNotExists(options?: FileSystemCreateOptions): Promise<FileSystemCreateIfNotExistsResponse>

參數

傳回

delete(FileSystemDeleteOptions)

刪除目前的檔案系統。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

function delete(options?: FileSystemDeleteOptions): Promise<FileSystemDeleteResponse>

參數

options
FileSystemDeleteOptions

選擇性。 刪除檔案系統時的選項。

傳回

deleteIfExists(FileSystemDeleteOptions)

如果存在,請刪除目前的檔案系統。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/delete-container

function deleteIfExists(options?: FileSystemDeleteOptions): Promise<FileSystemDeleteIfExistsResponse>

參數

傳回

exists(FileSystemExistsOptions)

如果此用戶端所代表的檔案系統存在,則傳回 true;否則為 false。

注意:請小心使用此函式,因為其他用戶端或應用程式可能會刪除現有的檔案系統。 反之亦然,此函式完成後,其他用戶端或應用程式可能會新增具有相同名稱的新檔案系統。

function exists(options?: FileSystemExistsOptions): Promise<boolean>

參數

傳回

Promise<boolean>

generateSasUrl(FileSystemGenerateSasUrlOptions)

僅適用于使用共用金鑰認證建構的 DataLakeFileSystemClient。

根據傳入的用戶端屬性和參數,產生服務共用存取簽章 (SAS) URI。 SAS 是由用戶端的共用金鑰認證所簽署。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas

function generateSasUrl(options: FileSystemGenerateSasUrlOptions): Promise<string>

參數

options
FileSystemGenerateSasUrlOptions

選用參數。

傳回

Promise<string>

由此用戶端所代表資源的 URI 所組成的 SAS URI,後面接著產生的 SAS 權杖。

getAccessPolicy(FileSystemGetAccessPolicyOptions)

取得指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統資料。

警告:剖析 startOn 和 expiresOn 字串時,JavaScript 日期可能會失去精確度。 例如,新的 Date (「2018-12-31T03:44:23.8827891Z」) .toISOString () 會取得 「2018-12-31T03:44:23.882Z」。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl

function getAccessPolicy(options?: FileSystemGetAccessPolicyOptions): Promise<FileSystemGetAccessPolicyResponse>

參數

options
FileSystemGetAccessPolicyOptions

選擇性。 取得檔案系統存取原則時的選項。

傳回

getDataLakeLeaseClient(string)

取得管理檔案系統租用的 DataLakeLeaseClient

function getDataLakeLeaseClient(proposeLeaseId?: string): DataLakeLeaseClient

參數

proposeLeaseId

string

選擇性。 初始建議的租用識別碼。

傳回

getDirectoryClient(string)

在目前的檔案系統下建立 DataLakeDirectoryClient 物件。

function getDirectoryClient(directoryName: string): DataLakeDirectoryClient

參數

directoryName

string

傳回

getFileClient(string)

在目前的檔案系統下建立 DataLakeFileClient 物件。

function getFileClient(fileName: string): DataLakeFileClient

參數

fileName

string

傳回

getProperties(FileSystemGetPropertiesOptions)

傳回指定檔案系統的所有使用者定義中繼資料和系統屬性。

警告: metadata 回應中傳回的物件會以小寫顯示其索引鍵,即使原本包含大寫字元也一樣。 這與DataLakeServiceClientincludeMetadata 方法所 listFileSystems 傳回的中繼資料索引鍵不同,此選項會保留其原始大小寫。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-properties

function getProperties(options?: FileSystemGetPropertiesOptions): Promise<FileSystemGetPropertiesResponse>

參數

options
FileSystemGetPropertiesOptions

選擇性。 取得檔案系統屬性時的選項。

傳回

listDeletedPaths(ListDeletedPathsOptions)

傳回非同步反覆運算器,以列出指定檔案系統下目錄和) 檔案 (目錄和檔案的所有路徑。

.byPage () 會傳回可同步反覆運算器,以列出頁面的路徑。

使用語法的 for await 範例:

// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const deletePath of fileSystemClient.listDeletedPaths()) {
  console.log(`Path ${i++}: ${deletePath.name}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = fileSystemClient.listDeletedPaths();
let deletedPathItem = await iter.next();
while (!deletedPathItem.done) {
  console.log(`Path ${i++}: ${deletedPathItem.value.name}`);
  pathItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 20 })) {
  for (const deletePath of response.pathItems) {
    console.log(`Path ${i++}: ${deletePath.name}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = fileSystemClient.listDeletedPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = fileSystemClient.listDeletedPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 path names
for (const deletePath of response.deletedPathItems) {
  console.log(`Path ${i++}: ${deletePath.name}`);
}

請參閱https://docs.microsoft.com/rest/api/storageservices/list-blobs

function listDeletedPaths(options?: ListDeletedPathsOptions): PagedAsyncIterableIterator<DeletedPath, FileSystemListDeletedPathsResponse, PageSettings>

參數

options
ListDeletedPathsOptions

選擇性。 列出已刪除路徑時的選項。

傳回

listPaths(ListPathsOptions)

傳回非同步反覆運算器,以列出指定檔案系統下目錄和) 檔案 (目錄和檔案的所有路徑。

.byPage () 會傳回可同步反覆運算器,以列出頁面的路徑。

使用語法的 for await 範例:

// Get the fileSystemClient before you run these snippets,
// Can be obtained from `serviceClient.getFileSystemClient("<your-filesystem-name>");`
let i = 1;
for await (const path of fileSystemClient.listPaths()) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

使用 iter.next() 的範例:

let i = 1;
let iter = fileSystemClient.listPaths();
let pathItem = await iter.next();
while (!pathItem.done) {
  console.log(`Path ${i++}: ${pathItem.value.name}, isDirectory?: ${pathItem.value.isDirectory}`);
  pathItem = await iter.next();
}

使用 byPage() 的範例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of fileSystemClient.listPaths().byPage({ maxPageSize: 20 })) {
  for (const path of response.pathItems) {
    console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
  }
}

搭配標記使用分頁的範例:

let i = 1;
let iterator = fileSystemClient.listPaths().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

// Gets next marker
let marker = response.continuationToken;

// Passing next marker as continuationToken

iterator = fileSystemClient.listPaths().byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 path names
for (const path of response.pathItems) {
  console.log(`Path ${i++}: ${path.name}, isDirectory?: ${path.isDirectory}`);
}

請參閱https://docs.microsoft.com/rest/api/storageservices/list-blobs

function listPaths(options?: ListPathsOptions): PagedAsyncIterableIterator<Path, FileSystemListPathsResponse, PageSettings>

參數

options
ListPathsOptions

選擇性。 列出路徑時的選項。

傳回

setAccessPolicy(PublicAccessType, SignedIdentifier<AccessPolicy>[], FileSystemSetAccessPolicyOptions)

設定指定檔案系統的許可權。 許可權會指出是否可以公開存取檔案系統中的目錄或檔案。

當您設定檔案系統的許可權時,會取代現有的許可權。 如果未提供任何存取權或 containerAcl,將會移除現有的檔案系統 ACL。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-acl

function setAccessPolicy(access?: PublicAccessType, fileSystemAcl?: SignedIdentifier<AccessPolicy>[], options?: FileSystemSetAccessPolicyOptions): Promise<FileSystemSetAccessPolicyResponse>

參數

access
PublicAccessType

選擇性。 檔案系統中資料的公用存取層級。

fileSystemAcl

SignedIdentifier<AccessPolicy>[]

選擇性。 每個元素的陣列都有唯一的識別碼和存取原則的詳細資料。

options
FileSystemSetAccessPolicyOptions

選擇性。 設定檔案系統存取原則時的選項。

傳回

setMetadata(Metadata, FileSystemSetMetadataOptions)

為指定的檔案系統設定一或多個使用者定義的名稱/值組。

如果未提供任何選項,或參數中未定義任何中繼資料,則會移除檔案系統中繼資料。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/set-container-metadata

function setMetadata(metadata?: Metadata, options?: FileSystemSetMetadataOptions): Promise<FileSystemSetMetadataResponse>

參數

metadata
Metadata

以此值取代現有的中繼資料。 如果未提供任何值,則會移除現有的中繼資料。

options
FileSystemSetMetadataOptions

選擇性。 設定檔案系統中繼資料時的選項。

傳回

undeletePath(string, string, FileSystemUndeletePathOption)

還原虛刪除的路徑。

請參閱https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob

function undeletePath(deletedPath: string, deletionId: string, options?: FileSystemUndeletePathOption): Promise<FileSystemUndeletePathResponse>

參數

deletedPath

string

必要。 已刪除路徑的路徑。

deletionId

string

必要。 與虛刪除路徑相關聯的刪除識別碼。

傳回