PDA

Показать полную графическую версию : [решено] проверка наличия файла в сети


pasha_mayerov
08-11-2018, 15:21
Доброго времени.
Ситуация следующая. есть скрипт проверяющий по ip из файла доступны ли пк, записывая лог файл результат.
теперь надо проверить наличие файла на доступных пк.
скрипт проходит, но лог пуск

set FSO = CreateObject("Scripting.FileSystemObject")
CompList = "PingLogs.txt"
Logs = "FileLogs.txt"

set f = FSO.OpenTextFile(CompList, 1, false)
set fLogs = FSO.OpenTextFile(Logs, 2, true)



WScript.Echo "Finish"

f.Close
fLogs.Close

WScript.Quit

ShowSubFolders FSO.GetFolder("%WINDIR%\folder")

Sub ShowSubFolders(Folder)
For Each Subfolder in Folder.SubFolders
objFile.WriteLine "%WINDIR%\folder" & Subfolder.path
For Each file In Subfolder.files
If file.name = "document.txt" Then
objFile.WriteLine "ok!"
i=1
Exit For
End If
Next
If i =0 Then
objFile.WriteLine "error!"
End If
i=0
ShowSubFolders Subfolder
Next
End Sub

Iska
08-11-2018, 18:21
теперь надо проверить наличие файла на доступных пк. »
Какой файл? По какому пути к удалённому ресурсу?

скрипт проходит, но лог пуск »
Переведите на русский, пожалуйста.

pasha_mayerov
09-11-2018, 13:25
осталась проблема с поиском по сети.


мне надо узнать есть ли файл текстовый документ.тхт на компьютерах указанных в файле PingLogs.txt и записать в отчет FileLogs.txt результат

set FSO = CreateObject("Scripting.FileSystemObject")
CompList = "PingLogs.txt"
Logs = "FileLogs.txt"

set f = FSO.OpenTextFile(CompList, 1, false)

set fLogs = FSO.OpenTextFile(Logs, 2, true)

Do While f.AtEndOfStream <> true
CompName = f.ReadLine

path = Unescape("\\" &CompName&"\Новая папка")

IF FSO.FolderExists(path) THEN
CheckFileInFolder CompName, FSO.GetFolder(path)
Else
fLogs.WriteLine CompName & " error!"
END IF

loop


WScript.Echo "Finish"

f.Close
fLogs.Close

WScript.Quit

Sub CheckFileInFolder(CompName, Folder)
Dim finded
finded = false
For Each file In Folder.files
IF file.name = "текстовый документ.тхт" Then
finded = true
Exit For
End If
Next

If finded then
fLogs.WriteLine CompName & " ok!"
Else
fLogs.WriteLine CompName & " error!"
end if

End Sub

Iska
09-11-2018, 16:47
осталась проблема с поиском по сети. »
Проблема осталась не с поиском по сети, а с формулировкой задачи.

megaloman
09-11-2018, 17:30
мне надо узнать есть ли файл текстовый документ.тхт на компьютерах объясните, известны ли не только IP компьютеров, но и имя расшаренной папки, путь к файлам, если это жестко однообразно задано на каждом компьютере, или надо просмотреть на каждом компьютере все расшаренные папки и делать поиск по всем обнаруженным? Опять же, каков при этом уровень вложенности папки, в которой может находиться искомый файл?

pasha_mayerov
19-11-2018, 11:14
известны ip компьютеров, путь к файлу, имя файла. путь жесткий. уровень вложенности 4

pasha_mayerov
19-11-2018, 16:03
главная проблема невнимательность. запрос рабочий путь не правильно был указан.




© OSzone.net 2001-2012