次の方法で共有


ShareDirectoryClient class

ShareDirectoryClient は、Azure Storage ディレクトリへの URL を表し、そのファイルとディレクトリを操作できます。

Extends

コンストラクター

ShareDirectoryClient(string, Credential_2, StoragePipelineOptions)

DirectoryClient のインスタンスを作成します。

ShareDirectoryClient(string, Pipeline)

DirectoryClient のインスタンスを作成します。

プロパティ

name

ディレクトリの名前

path

ディレクトリの完全なパス

shareName

このディレクトリ クライアントに対応する共有名

継承されたプロパティ

accountName
url

URL 文字列値。

メソッド

create(DirectoryCreateOptions)

指定した共有ディレクトリまたは親ディレクトリの下に新しいディレクトリを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

createFile(string, number, FileCreateOptions)

新しいファイルを作成するか、このディレクトリの下のファイルを置き換えます。 これは、コンテンツを含まないファイルのみを初期化します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-file」を参照してください。

createIfNotExists(DirectoryCreateOptions)

指定した共有ディレクトリまたは親ディレクトリが存在しない場合は、新しいディレクトリを作成します。 ディレクトリが既に存在する場合は、変更されません。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

createSubdirectory(string, DirectoryCreateOptions)

このディレクトリの下に新しいサブディレクトリを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

delete(DirectoryDeleteOptions)

指定した空のディレクトリを削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

deleteFile(string, FileDeleteOptions)

このディレクトリの指定したファイルをストレージ アカウントから削除します。 正常に削除されたファイルは、その時点でストレージ アカウントのインデックスから削除され、クライアントからアクセスできなくなります。 ファイルのデータは、後でガベージ コレクション中にサービスから削除されます。 ファイルが SMB クライアントで開かれている場合、ファイルの削除は状態コード 409 (競合) とエラー コード SharingViolation で失敗します。

共有スナップショット (共有の読み取り専用コピー) では、ファイルの削除はサポートされていません。 共有スナップショットでこの操作を実行しようとすると、400 (InvalidQueryParameterValue) で失敗します

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2」を参照してください。

deleteIfExists(DirectoryDeleteOptions)

指定した空のディレクトリが存在する場合は削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

deleteSubdirectory(string, DirectoryDeleteOptions)

このディレクトリの下にある指定された空のサブディレクトリを削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

exists(DirectoryExistsOptions)

指定したディレクトリが存在する場合は true を返します。それ以外の場合は false。 注: 既存のディレクトリは他のクライアントまたはアプリケーションによって削除される可能性があるため、この関数は注意して使用してください。 その逆も同様に、この関数の完了後に、他のクライアントまたはアプリケーションによって新しいディレクトリが追加される可能性があります。

forceCloseAllHandles(DirectoryForceCloseHandlesSegmentOptions)

ディレクトリのすべてのハンドルを強制的に閉じます。

https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles」を参照してください。

forceCloseHandle(string, DirectoryForceCloseHandlesOptions)

ディレクトリの特定のハンドルを強制的に閉じます。

https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles」を参照してください。

getDirectoryClient(string)

サブディレクトリの ShareDirectoryClient オブジェクトを作成します。

getFileClient(string)

ShareFileClient オブジェクトを作成します。

getProperties(DirectoryGetPropertiesOptions)

指定したディレクトリのすべてのシステム プロパティを返します。また、ディレクトリの存在を確認するために使用することもできます。 返されるデータには、ディレクトリやサブディレクトリのファイルは含まれません。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties」を参照してください。

listFilesAndDirectories(DirectoryListFilesAndDirectoriesOptions)

指定したアカウントのすべてのファイルとディレクトリを一覧表示する非同期反復可能な反復子を返します。 .byPage() は非同期反復可能な反復子を返し、ページ内のファイルとディレクトリを一覧表示します。

構文を使用する for await 例:

let i = 1;
for await (const entity of directoryClient.listFilesAndDirectories()) {
  if (entity.kind === "directory") {
    console.log(`${i++} - directory\t: ${entity.name}`);
  } else {
    console.log(`${i++} - file\t: ${entity.name}`);
  }
}

iter.next() の使用例:

let i = 1;
let iter = directoryClient.listFilesAndDirectories();
let entity = await iter.next();
while (!entity.done) {
  if (entity.value.kind === "directory") {
    console.log(`${i++} - directory\t: ${entity.value.name}`);
  } else {
    console.log(`${i++} - file\t: ${entity.value.name}`);
  }
  entity = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of directoryClient
  .listFilesAndDirectories()
  .byPage({ maxPageSize: 20 })) {
  for (const fileItem of response.segment.fileItems) {
    console.log(`${i++} - file\t: ${fileItem.name}`);
  }
  for (const dirItem of response.segment.directoryItems) {
    console.log(`${i++} - directory\t: ${dirItem.name}`);
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = directoryClient.listFilesAndDirectories().byPage({ maxPageSize: 3 });
let response = (await iterator.next()).value;

// Prints 3 file and directory names
for (const fileItem of response.segment.fileItems) {
  console.log(`${i++} - file\t: ${fileItem.name}`);
}

for (const dirItem of response.segment.directoryItems) {
  console.log(`${i++} - directory\t: ${dirItem.name}`);
}

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

// Passing next marker as continuationToken
iterator = directoryClient
  .listFilesAndDirectories()
  .byPage({ continuationToken: dirMarker, maxPageSize: 4 });
response = (await iterator.next()).value;

// Prints 10 file and directory names
for (const fileItem of response.segment.fileItems) {
  console.log(`${i++} - file\t: ${fileItem.name}`);
}

for (const dirItem of response.segment.directoryItems) {
  console.log(`${i++} - directory\t: ${dirItem.name}`);
}
listHandles(DirectoryListHandlesOptions)

すべてのハンドルを一覧表示する非同期反復可能な反復子を返します。 指定したアカウントの下に。 .byPage() は非同期反復可能な反復子を返し、ページ内のハンドルを一覧表示します。

構文を使用する for await 例:

let i = 1;
let iter = dirClient.listHandles();
for await (const handle of iter) {
  console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}

iter.next() の使用例:

let i = 1;
let iter = dirClient.listHandles();
let handleItem = await iter.next();
while (!handleItem.done) {
  console.log(`Handle ${i++}: ${handleItem.value.path}, opened time ${handleItem.value.openTime}, clientIp ${handleItem.value.clientIp}`);
  handleItem = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of dirClient.listHandles({ recursive: true }).byPage({ maxPageSize: 20 })) {
  if (response.handleList) {
    for (const handle of response.handleList) {
      console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
    }
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = dirClient.listHandles().byPage({ maxPageSize: 2 });
let response = await iterator.next();

// Prints 2 handles
if (response.value.handleList) {
  for (const handle of response.value.handleList) {
    console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
  }
}

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

// Passing next marker as continuationToken
console.log(`    continuation`);
iterator = dirClient.listHandles().byPage({ continuationToken: marker, maxPageSize: 10 });
response = await iterator.next();

// Prints 2 more handles assuming you have more than four directory/files opened
if (!response.done && response.value.handleList) {
  for (const handle of response.value.handleList) {
    console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
  }
}
rename(string, DirectoryRenameOptions)

ディレクトリ名を変更します。 この API では、同じ共有内のディレクトリの名前変更のみがサポートされます。

setMetadata(Metadata, DirectorySetMetadataOptions)

指定したディレクトリのユーザー定義メタデータを更新します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata」を参照してください。

setProperties(DirectoryProperties)

ディレクトリのプロパティを設定します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties」を参照してください。

コンストラクターの詳細

ShareDirectoryClient(string, Credential_2, StoragePipelineOptions)

DirectoryClient のインスタンスを作成します。

new ShareDirectoryClient(url: string, credential?: Credential_2, options?: StoragePipelineOptions)

パラメーター

url

string

"; などhttps://myaccount.file.core.windows.net/myshare/mydirectory"、Azure Storage ファイル ディレクトリを指す URL 文字列。 AnonymousCredential を使用している場合は、SAS を追加できます (例: "https://myaccount.file.core.windows.net/myshare/mydirectory?sasString")。 このメソッドは、ディレクトリを指すエンコードされた URL またはエンコードされていない URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされません。URL パス内の特殊文字のみがエスケープされます。 ただし、ディレクトリ名に %が含まれている場合は、URL でディレクトリ名をエンコードする必要があります。 "mydir%" という名前のディレクトリなど、URL は "https://myaccount.file.core.windows.net/myshare/mydir%25"" である必要があります。

credential
Credential_2

AnonymousCredential や StorageSharedKeyCredential など。 指定しない場合は、AnonymousCredential が使用されます。

options
StoragePipelineOptions

省略可能。 HTTP パイプラインを構成するためのオプション。

ShareDirectoryClient(string, Pipeline)

DirectoryClient のインスタンスを作成します。

new ShareDirectoryClient(url: string, pipeline: Pipeline)

パラメーター

url

string

"; などhttps://myaccount.file.core.windows.net/myshare/mydirectory"、Azure Storage ファイル ディレクトリを指す URL 文字列。 AnonymousCredential を使用している場合は、SAS を追加できます (例: "https://myaccount.file.core.windows.net/myshare/mydirectory?sasString")。 このメソッドは、ディレクトリを指すエンコードされた URL またはエンコードされていない URL を受け入れます。 エンコードされた URL 文字列は 2 回エスケープされません。URL パス内の特殊文字のみがエスケープされます。 ただし、ディレクトリ名に %が含まれている場合は、URL でディレクトリ名をエンコードする必要があります。 "mydir%" という名前のディレクトリなど、URL は "https://myaccount.file.core.windows.net/myshare/mydir%25"" である必要があります。

pipeline
Pipeline

newPipeline() を呼び出して既定のパイプラインを作成するか、カスタマイズされたパイプラインを指定します。

プロパティの詳細

name

ディレクトリの名前

string name

プロパティ値

string

path

ディレクトリの完全なパス

string path

プロパティ値

string

shareName

このディレクトリ クライアントに対応する共有名

string shareName

プロパティ値

string

継承されたプロパティの詳細

accountName

accountName: string

プロパティ値

string

StorageClient.accountNameから継承

url

URL 文字列値。

url: string

プロパティ値

string

StorageClient.urlから継承

メソッドの詳細

create(DirectoryCreateOptions)

指定した共有ディレクトリまたは親ディレクトリの下に新しいディレクトリを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

function create(options?: DirectoryCreateOptions): Promise<DirectoryCreateResponse>

パラメーター

options
DirectoryCreateOptions

[ディレクトリの作成] 操作のオプション。

戻り値

ディレクトリ操作の応答データ。

createFile(string, number, FileCreateOptions)

新しいファイルを作成するか、このディレクトリの下のファイルを置き換えます。 これは、コンテンツを含まないファイルのみを初期化します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-file」を参照してください。

function createFile(fileName: string, size: number, options?: FileCreateOptions): Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>

パラメーター

fileName

string

size

number

ファイルの最大サイズ (最大 4 TB) をバイト単位で指定します。

options
FileCreateOptions

[ファイルの作成] 操作のオプション。

戻り値

Promise<{ fileClient: ShareFileClient, fileCreateResponse: FileCreateResponse }>

ファイル作成応答データと、対応するファイル クライアント。

createIfNotExists(DirectoryCreateOptions)

指定した共有ディレクトリまたは親ディレクトリが存在しない場合は、新しいディレクトリを作成します。 ディレクトリが既に存在する場合は、変更されません。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

function createIfNotExists(options?: DirectoryCreateOptions): Promise<DirectoryCreateIfNotExistsResponse>

パラメーター

戻り値

createSubdirectory(string, DirectoryCreateOptions)

このディレクトリの下に新しいサブディレクトリを作成します。

https://docs.microsoft.com/en-us/rest/api/storageservices/create-directory」を参照してください。

function createSubdirectory(directoryName: string, options?: DirectoryCreateOptions): Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>

パラメーター

directoryName

string

options
DirectoryCreateOptions

[ディレクトリの作成] 操作のオプション。

戻り値

Promise<{ directoryClient: ShareDirectoryClient, directoryCreateResponse: DirectoryCreateResponse }>

ディレクトリは応答データと対応する DirectoryClient インスタンスを作成します。

delete(DirectoryDeleteOptions)

指定した空のディレクトリを削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

function delete(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>

パラメーター

options
DirectoryDeleteOptions

ディレクトリ削除操作のオプション。

戻り値

ディレクトリ削除操作の応答データ。

deleteFile(string, FileDeleteOptions)

このディレクトリの指定したファイルをストレージ アカウントから削除します。 正常に削除されたファイルは、その時点でストレージ アカウントのインデックスから削除され、クライアントからアクセスできなくなります。 ファイルのデータは、後でガベージ コレクション中にサービスから削除されます。 ファイルが SMB クライアントで開かれている場合、ファイルの削除は状態コード 409 (競合) とエラー コード SharingViolation で失敗します。

共有スナップショット (共有の読み取り専用コピー) では、ファイルの削除はサポートされていません。 共有スナップショットでこの操作を実行しようとすると、400 (InvalidQueryParameterValue) で失敗します

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-file2」を参照してください。

function deleteFile(fileName: string, options?: FileDeleteOptions): Promise<FileDeleteResponse>

パラメーター

fileName

string

削除するファイルの名前

options
FileDeleteOptions

[ファイルの削除] 操作のオプション。

戻り値

ファイル削除応答データ。

deleteIfExists(DirectoryDeleteOptions)

指定した空のディレクトリが存在する場合は削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

function deleteIfExists(options?: DirectoryDeleteOptions): Promise<DirectoryDeleteIfExistsResponse>

パラメーター

戻り値

deleteSubdirectory(string, DirectoryDeleteOptions)

このディレクトリの下にある指定された空のサブディレクトリを削除します。 ディレクトリを空にしてから削除する必要があることに注意してください。

https://docs.microsoft.com/en-us/rest/api/storageservices/delete-directory」を参照してください。

function deleteSubdirectory(directoryName: string, options?: DirectoryDeleteOptions): Promise<DirectoryDeleteResponse>

パラメーター

directoryName

string

options
DirectoryDeleteOptions

ディレクトリ削除操作のオプション。

戻り値

ディレクトリ削除応答データ。

exists(DirectoryExistsOptions)

指定したディレクトリが存在する場合は true を返します。それ以外の場合は false。 注: 既存のディレクトリは他のクライアントまたはアプリケーションによって削除される可能性があるため、この関数は注意して使用してください。 その逆も同様に、この関数の完了後に、他のクライアントまたはアプリケーションによって新しいディレクトリが追加される可能性があります。

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

パラメーター

options
DirectoryExistsOptions

オプションを [Exists]\(存在する\) 操作に設定します。

戻り値

Promise<boolean>

forceCloseAllHandles(DirectoryForceCloseHandlesSegmentOptions)

ディレクトリのすべてのハンドルを強制的に閉じます。

https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles」を参照してください。

function forceCloseAllHandles(options?: DirectoryForceCloseHandlesSegmentOptions): Promise<CloseHandlesInfo>

パラメーター

戻り値

Promise<CloseHandlesInfo>

forceCloseHandle(string, DirectoryForceCloseHandlesOptions)

ディレクトリの特定のハンドルを強制的に閉じます。

https://docs.microsoft.com/en-us/rest/api/storageservices/force-close-handles」を参照してください。

function forceCloseHandle(handleId: string, options?: DirectoryForceCloseHandlesOptions): Promise<DirectoryForceCloseHandlesResponse>

パラメーター

handleId

string

特定のハンドル ID は、アスタリスク "*" にすることはできません。 forceCloseHandlesSegment() を使用して、すべてのハンドルを閉じます。

戻り値

getDirectoryClient(string)

サブディレクトリの ShareDirectoryClient オブジェクトを作成します。

function getDirectoryClient(subDirectoryName: string): ShareDirectoryClient

パラメーター

subDirectoryName

string

サブディレクトリ名

戻り値

指定したサブディレクトリ名の ShareDirectoryClient オブジェクト。

使用例:

const directoryClient = shareClient.getDirectoryClient("<directory name>");
await directoryClient.create();
console.log("Created directory successfully");

getFileClient(string)

ShareFileClient オブジェクトを作成します。

function getFileClient(fileName: string): ShareFileClient

パラメーター

fileName

string

ファイル名。

戻り値

指定したファイル名の新しい ShareFileClient オブジェクト。

使用例:

const content = "Hello world!"

const fileClient = directoryClient.getFileClient("<file name>");

await fileClient.create(content.length);
console.log("Created file successfully!");

await fileClient.uploadRange(content, 0, content.length);
console.log("Updated file successfully!")

getProperties(DirectoryGetPropertiesOptions)

指定したディレクトリのすべてのシステム プロパティを返します。また、ディレクトリの存在を確認するために使用することもできます。 返されるデータには、ディレクトリやサブディレクトリのファイルは含まれません。

https://docs.microsoft.com/en-us/rest/api/storageservices/get-directory-properties」を参照してください。

function getProperties(options?: DirectoryGetPropertiesOptions): Promise<DirectoryGetPropertiesResponse>

パラメーター

options
DirectoryGetPropertiesOptions

[ディレクトリのプロパティの取得] 操作のオプション。

戻り値

ディレクトリのプロパティの取得操作の応答データ。

listFilesAndDirectories(DirectoryListFilesAndDirectoriesOptions)

指定したアカウントのすべてのファイルとディレクトリを一覧表示する非同期反復可能な反復子を返します。 .byPage() は非同期反復可能な反復子を返し、ページ内のファイルとディレクトリを一覧表示します。

構文を使用する for await 例:

let i = 1;
for await (const entity of directoryClient.listFilesAndDirectories()) {
  if (entity.kind === "directory") {
    console.log(`${i++} - directory\t: ${entity.name}`);
  } else {
    console.log(`${i++} - file\t: ${entity.name}`);
  }
}

iter.next() の使用例:

let i = 1;
let iter = directoryClient.listFilesAndDirectories();
let entity = await iter.next();
while (!entity.done) {
  if (entity.value.kind === "directory") {
    console.log(`${i++} - directory\t: ${entity.value.name}`);
  } else {
    console.log(`${i++} - file\t: ${entity.value.name}`);
  }
  entity = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of directoryClient
  .listFilesAndDirectories()
  .byPage({ maxPageSize: 20 })) {
  for (const fileItem of response.segment.fileItems) {
    console.log(`${i++} - file\t: ${fileItem.name}`);
  }
  for (const dirItem of response.segment.directoryItems) {
    console.log(`${i++} - directory\t: ${dirItem.name}`);
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = directoryClient.listFilesAndDirectories().byPage({ maxPageSize: 3 });
let response = (await iterator.next()).value;

// Prints 3 file and directory names
for (const fileItem of response.segment.fileItems) {
  console.log(`${i++} - file\t: ${fileItem.name}`);
}

for (const dirItem of response.segment.directoryItems) {
  console.log(`${i++} - directory\t: ${dirItem.name}`);
}

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

// Passing next marker as continuationToken
iterator = directoryClient
  .listFilesAndDirectories()
  .byPage({ continuationToken: dirMarker, maxPageSize: 4 });
response = (await iterator.next()).value;

// Prints 10 file and directory names
for (const fileItem of response.segment.fileItems) {
  console.log(`${i++} - file\t: ${fileItem.name}`);
}

for (const dirItem of response.segment.directoryItems) {
  console.log(`${i++} - directory\t: ${dirItem.name}`);
}
function listFilesAndDirectories(options?: DirectoryListFilesAndDirectoriesOptions): PagedAsyncIterableIterator<({ kind: "file" } & FileItem) | ({ kind: "directory" } & DirectoryItem), DirectoryListFilesAndDirectoriesSegmentResponse>

パラメーター

options
DirectoryListFilesAndDirectoriesOptions

ファイルとディレクトリの操作を一覧表示するオプション。

戻り値

PagedAsyncIterableIterator<({ kind: "file" } & FileItem) | ({ kind: "directory" } & DirectoryItem), DirectoryListFilesAndDirectoriesSegmentResponse>

ページングをサポートする asyncIterableIterator。

listHandles(DirectoryListHandlesOptions)

すべてのハンドルを一覧表示する非同期反復可能な反復子を返します。 指定したアカウントの下に。 .byPage() は非同期反復可能な反復子を返し、ページ内のハンドルを一覧表示します。

構文を使用する for await 例:

let i = 1;
let iter = dirClient.listHandles();
for await (const handle of iter) {
  console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
}

iter.next() の使用例:

let i = 1;
let iter = dirClient.listHandles();
let handleItem = await iter.next();
while (!handleItem.done) {
  console.log(`Handle ${i++}: ${handleItem.value.path}, opened time ${handleItem.value.openTime}, clientIp ${handleItem.value.clientIp}`);
  handleItem = await iter.next();
}

byPage() の使用例:

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of dirClient.listHandles({ recursive: true }).byPage({ maxPageSize: 20 })) {
  if (response.handleList) {
    for (const handle of response.handleList) {
      console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
    }
  }
}

マーカーでページングを使用する例:

let i = 1;
let iterator = dirClient.listHandles().byPage({ maxPageSize: 2 });
let response = await iterator.next();

// Prints 2 handles
if (response.value.handleList) {
  for (const handle of response.value.handleList) {
    console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
  }
}

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

// Passing next marker as continuationToken
console.log(`    continuation`);
iterator = dirClient.listHandles().byPage({ continuationToken: marker, maxPageSize: 10 });
response = await iterator.next();

// Prints 2 more handles assuming you have more than four directory/files opened
if (!response.done && response.value.handleList) {
  for (const handle of response.value.handleList) {
    console.log(`Handle ${i++}: ${handle.path}, opened time ${handle.openTime}, clientIp ${handle.clientIp}`);
  }
}
function listHandles(options?: DirectoryListHandlesOptions): PagedAsyncIterableIterator<HandleItem, DirectoryListHandlesResponse>

パラメーター

options
DirectoryListHandlesOptions

ハンドル操作を一覧表示するオプション。

ページングをサポートする asyncIterableIterator。

戻り値

PagedAsyncIterableIterator<HandleItem, DirectoryListHandlesResponse>

rename(string, DirectoryRenameOptions)

ディレクトリ名を変更します。 この API では、同じ共有内のディレクトリの名前変更のみがサポートされます。

function rename(destinationPath: string, options?: DirectoryRenameOptions): Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>

パラメーター

destinationPath

string

名前を変更する宛先パスを指定します。 パスは、宛先を指定する URL に配置するようにエンコードされます。

options
DirectoryRenameOptions

名前変更操作のオプション。

戻り値

Promise<{ destinationDirectoryClient: ShareDirectoryClient, directoryRenameResponse: DirectoryRenameResponse }>

ファイル名変更操作の応答データ。

使用例:


// Rename the directory
await diretoryClient.rename(destinationPath);
console.log("Renamed directory successfully!");

setMetadata(Metadata, DirectorySetMetadataOptions)

指定したディレクトリのユーザー定義メタデータを更新します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-metadata」を参照してください。

function setMetadata(metadata?: Metadata, options?: DirectorySetMetadataOptions): Promise<DirectorySetMetadataResponse>

パラメーター

metadata
Metadata

メタデータが指定されていない場合、既存のすべてのディレクトリ メタデータが削除されます

options
DirectorySetMetadataOptions

[ディレクトリ セット メタデータ] 操作のオプション。

戻り値

ディレクトリ セット メタデータ操作の応答データ。

setProperties(DirectoryProperties)

ディレクトリのプロパティを設定します。

https://docs.microsoft.com/en-us/rest/api/storageservices/set-directory-properties」を参照してください。

function setProperties(properties?: DirectoryProperties): Promise<DirectorySetPropertiesResponse>

パラメーター

properties
DirectoryProperties

戻り値