Geöffnete Dateien anzeigen und schließen mit PowerShell

Oft lässt sich eine Datei auf einem Server nicht löschen, da sie noch geöffnet ist. Leider sieht man oft nur durch Umwege die Details dazu. PowerShell bietet uns wie immer Möglichkeiten! Wie man Geöffnete Dateien findet und schließen kann, seht ihr bei uns 🙂

MTZD / Pixabay

 

Geöffnete Dateien finden

Um sich die geöffneten Dateien anzeigen zu lassen, brauchen wir einen einfachen PowerShell Befehl:

Get-SmbOpenFile | Format-List

Get SMB Open File

 

Aktive Sessions / Verbindungen anzeigen

Um aus Interesse die aktiven Verbindungen anzeigen zu lassen, benötigt man diesen Befehl:

Get-SmbSession

Get SMB Session

 

Geöffnete Dateien schließen

Zum Schluss soll die Datei oder auch Dateien geschlossen werden. Dazu benötigt man die “FileID”. Diese wird oben bei “Get-SmbOpenFile” ausgespuckt.

Um nun die Datei zu schließen, benötigt man diesem Befehl, inkl. die “FileID” der zu schließenden Datei:

Close-SmbOpenFile -FileId 120259084297

 

Alle Dateien automatisiert schließen

Natürlich haben wir auch die Möglichkeit alle geöffneten Dateien schließen zu lassen. Hierzu muss man das PS1 Script ein wenig erweitern. Außerdem habe ich eingebaut, dass alle Files geschlossen werden, welche nicht von einem bestimmten Benutzer sind.

Get-SmbOpenFile | Where {$_.ClientUserName -notcontains "DOMAIN\User"} |
Foreach-Object {
    Close-SmbOpenFile -FileId $_.FileId
}

In Zeile 1 muss der Benutzer angegeben werden, der vom Dateien schließen ausgenommen werden soll. Beispielsweise wird hier der Admin-User angegeben.

 

Hinweis

Die Befehle sind für das Protokoll SMB. Also vor allem interessant auf Arbeiten auf Fileservern!

Außerdem werden für die Aktion werden Administrator – Rechte benötigt, also PowerShell auch mit erhöhten Rechten starten 🙂

Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

sidebar
>