【 Close-SmbOpenFile 】コマンドレット――SMBサーバ上で開かれているファイルを強制的に閉じるWindows PowerShell基本Tips(79)

本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Close-SmbOpenFile」コマンドレットを解説します。

» 2023年08月04日 05時00分 公開
[後藤諭史@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、「SMB(Server Message Block)」サーバ上で開かれているファイルを強制的に閉じる「Close-SmbOpenFile」コマンドレットです。

Close-SmbOpenFileコマンドレットとは?

 ネットワーク経由でのファイル共有は非常に便利です。しかし、権限さえあれば誰でもファイルを開いて編集できるため、自分が必要なときに他の人にファイルを開かれていて編集できない、といった場面に遭遇することもあるでしょう(画面1)。

ALT 画面1 2人同時にファイルを開くと、一方が「使用中のファイル」として編集できない

 本連載第75回で紹介した「Get-SmbOpenFile」は、誰がどこからアクセスしてきているかなどの詳細情報を取得するコマンドレットですが、今回紹介する「Close-SmbOpenFile」は、開かれているファイルを強制的に閉じるコマンドレットになります。

 コマンドプロンプトであれば「net file /close」を使用しますが、Close-SmbOpenFileコマンドレットはGet-SmbOpenFileコマンドレットと組み合わせることで、より便利に使用できます。

Close-SmbOpenFileコマンドレットの書式

Close-SmbOpenFile [オプション]


Close-SmbOpenFileコマンドレットの主なオプション

オプション 意味
-FileId 閉じたいファイルのIDを指定する。省略可能
-SessionId 閉じたいファイルを使用しているSMBセッションの「セッションID」を指定する。省略可能
-ClientComputerName 閉じたいファイルを使用しているセッションを確立している「IPアドレス」を指定する。省略可能
-ClientUserName 閉じたいファイルを使用しているセッションを確立している「ユーザー名」を指定する。省略可能


開かれているファイルを強制的に閉じる

 オプションを指定せずにClose-SmbOpenFileコマンドレットを実行すると、現在開かれている全てのファイルを閉じます(画面2)。ファイルを閉じる際には、閉じて問題ないかどうかの確認プロンプトが表示されるので、個別に応答する場合は[Y]キーで、全てを閉じて問題ない場合は[A]キーで応答します。なお、Close-SmbOpenFileコマンドレットは、管理者権限で実行する必要があります。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。