我正在學習文件系統監控,以加快我的郵件服務器的第3次和第4次備份。我有一個漂亮的VB腳本,在驅動器D上完美地工作,但是當我查詢驅動器C的更改時,如果使用通配符,則不會返回任何結果。爲什麼WQL LIKE操作符不能在驅動器c上工作,但在驅動器d上工作正常?
這裏是我的查詢:
這工作得很好C:\ SC,但不返回子文件夾的變化:
Select * From __InstanceOperationEvent Within 10 Where TargetInstance Isa 'CIM_DataFile' And ((TargetInstance.Drive='c:' And TargetInstance.Path = '\\sc\\'))
這對於d正常工作:\ SC,並不會返回子文件夾的變化:
Select * From __InstanceOperationEvent Within 10 Where TargetInstance Isa 'CIM_DataFile' And ((TargetInstance.Drive='d:' And TargetInstance.Path LIKE '\\sc\\%'))
這一個根本沒有返回任何變化。沒有錯誤消息被返回,並且腳本繼續運行:
Select * From __InstanceOperationEvent Within 10 Where TargetInstance Isa 'CIM_DataFile' And ((TargetInstance.Drive='c:' And TargetInstance.Path LIKE '\\sc\\%'))
雙括號使我可以添加與「OR」相關的類似查詢。
我的系統驅動器是驅動器C.
驅動器D是一個可移動的USB驅動器。
我改變了我的系統驅動器上的一些設置,以防止這種情況發生?
或者查詢返回的結果太多?
我一直在尋找這個幾個小時。任何見解將不勝感激。
好吧,聽起來可行,但糾正我,如果我錯了 - 驅動器不被查詢,而是事件日誌。上面給出的第二個例子完美地適用於驅動器D:上的文件夾和子文件夾,順便說一下,它備份了4個不同的服務器,使它既不小也不簡單,所以顯然可以使用LIKE來檢索子文件夾更改,對?每個文件的創建,刪除和更改都將記錄到事件日誌中,那麼如何查詢事件日誌以查找文件夾上發生的事件以及驅動器c上的子文件夾:? – alfadog67
您的c和d驅動器中有多少個文件? – RRUZ
C驅動器是典型的Windows安裝,D驅動器是3個典型的Windows安裝和一個Linux。 – alfadog67