Windows-Server-2008-R2
net 文件與 openfiles 的 ID
我正在編寫一個 PowerShell 腳本,以便更快地關閉大型 Windows Server 2008 R2 文件伺服器上的鎖定文件(此時打開了 2500 多個文件,高峰時間就像 3-4 小時前),我會在
net files
或之間進行選擇openfiles
。所以我選擇了openfiles
更新的版本,它可以提供文件的完整路徑(net files
也可以這樣做,但你必須查詢每個 ID)。我遇到了問題:某些文件無法關閉。我檢查了網路文件,一切正常……所以我開始仔細觀察,這是我發現的(摘錄):
C:\> net files ID Path User name # Locks ------------------------------------------------------------------------------- 3221368833 G:\Users\... SomeUser 3 2550215683 G:\Users\... SomeUser 3 3422797829 G:\Users\... SomeUser 0 805310474 F:\Recursos\... SomeUser 3 335585292 G:\Users\SomeUser\My Documents SomeUser 0 4026636306 G:\Users\SomeUser\Desktop SomeUser 0 2684396568 G:\Users\... SomeUser 0 2952839192 G:\Users\...\EXCEL\SomeFolder2016 SomeUser 0 4160993304 G:\Users\... SomeUser 0 1610613364 F:\Recursos\Suministros SomeUser 0 The command completed successfully. C:\> openfiles /query /v Files opened remotely via local share points: --------------------------------------------- Hostname ID Accessed By Type #Locks Open Mode Open File (Path\executable) =============== ======== ==================== ========== ========== =============== ============================================================================ MyServer 32213688 SomeUser Windows 3 Write + Read G:\Users\SomeUser\My Documents\[SomePath].XLS MyServer 25502156 SomeUser Windows 3 Write + Read G:\Users\SomeUser\My Documents\[SomePath].xls MyServer 34227978 SomeUser Windows 0 Write + Read G:\Users\SomeUser\My Documents\[SomePath].xls MyServer 80531047 SomeUser Windows 3 Write + Read F:\Recursos\Suministros\[SomePath].xls MyServer 33558529 SomeUser Windows 0 Read G:\Users\SomeUser\My Documents MyServer 40266363 SomeUser Windows 0 Read G:\Users\SomeUser\Desktop MyServer 26843965 SomeUser Windows 0 Write + Read G:\Users\SomeUser\My Documents\[SomePath].XLS MyServer 29528391 SomeUser Windows 0 Read G:\Users\SomeUser\My Documents\EXCEL\SomeFolder2016 MyServer 41609933 SomeUser Windows 0 Write + Read G:\Users\SomeUser\My Documents\[SomePath].XLS MyServer 16106133 SomeUser Windows 0 Read F:\Recursos\Suministros
等等,ID 不一樣……天啊,不,
openfiles
ID 被截斷了!!所以很明顯,對於腳本本身,我目前正在尋找
net files
,獲取 ID,查詢每個 ID,以便獲得完整路徑,然後我可以重用腳本的其餘部分。但是為了我的理智:這是一個錯誤嗎?一個特徵?Windows Server 2008 R2 不是新的,我找不到任何參考,更不用說修復了!
所以三年後,我找到了答案和解決方案,或者解決方法:這是預設輸出的錯誤
openfiles
,即table
. 如果您指定選項/FO CSV
或/FO List
,則 ID 是完整的。