Войти

Показать полную графическую версию : Список шар в лог.


Piratos
25-02-2016, 11:14
Нужно собрать при логон-скрипте инфу о шарах на компутере.
Имя шары и путь.
Добавил в логон вот это
For /F "Tokens=* Delims= " %%I In ('net share ^| Find ":"') Do (
Echo %date% %time% найдена шара %%I >>"\\сервер\Reports\Shara\%COMPUTERNAME%.txt"
)

Так вот, шары на английском языке отлично падают в лог и на русском в одно слово только. Стоит например назвать "Русский папец" в лог падает только путь, а имени шары нету- пустота.
Игрался с параметрами Tokens и Delims мне не помогло.
Подскажите куда копать или как сделать????
Заранее благодарен.

Charg
25-02-2016, 11:41
Echo "%date% %time% найдена шара %%I" »
Кавычки же тут нужны, не?

Elven
25-02-2016, 11:54
Charg, необязательно.
Piratos, с tokens и delims шо-то ты нагородил семь верст до небёс и все лесом. Попробуй так
for /f "delims=" %%i in ('net share ^| find ":"') do @echo %date% %time% найдена шара %%i >>"\\сервер\Reports\Shara\%COMPUTERNAME%.txt"

Piratos
25-02-2016, 12:16
Elven, нет всё также.
вот что в файле
25.02.2016 13:12:39,68 найдена шара Users C:\Users
25.02.2016 13:12:39,68 найдена шара D:\Dvr
во второй строке должно быть "Русский папец" в крякозябрах, а тута пуста.
с tokens и delims я написал последний мой вариант не умного моего творчества.

Спасибо что откликнулись.

Elven
25-02-2016, 12:53
Хм... Забавная проблема. Не пробовал взять папки с длинной имени побольше, оказывается если имя шары вместе с путем не помещается в строке, то после имени шары идет перенос строки, а потом уже (на следующей строке) печатается путь к ней. Думаю через net share здесь сделать ничего не получится (точнее потребует много лишних усилий), проще будет получить это все через wmic

for /f "delims=" %%i in ('wmic share get name^,path ^| find ":"') do @echo %date% %time% найдена шара %%i >>"\\сервер\Reports\Shara\%COMPUTERNAME%.txt"

Piratos
25-02-2016, 13:15
Жаль очень.
Я в wmic полный профан. мне б готовый вариант или ссылку.

Charg
25-02-2016, 13:26
мне б готовый вариант или ссылку. »
эмм...
http://i.imgur.com/1ZrynSz.png

Piratos
25-02-2016, 13:31
Charg, Блин я ещё и слепец!!!!!!!
Я подумал это просто цитата сообщения.
Спасибо огромное!!!

Всё работает!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Piratos
25-02-2016, 14:28
Вот конечный вариант без крякозябр, может и нагородил - но ласапед работает . Спасибо огромное Elven
@echo off
1>nul chcp 866
for /f "delims=" %%i in ('wmic share get name^,path ^| find ":"') do call:log "%%i"
goto:eof

:log
1>nul chcp 1251
1>>"\\сервачокс\Reports\Shar\%COMPUTERNAME%.txt" echo %date% %time% найдена шара %~1
1>nul chcp 866

Iska
25-02-2016, 14:32
без крякозябр »
Лучше обзаведитесь нормальным редактором, умеющим работать с OEM/866.

Piratos
25-02-2016, 14:42
Iska, шэф не любит "другое"..... нужно всё стандартным набором винды.

Iska
25-02-2016, 15:14
Piratos, некомпетентность ещё никого не красила. Даже «шефа».

Elven
25-02-2016, 15:29
всё стандартным набором винды »
т.е. С текстом он работает в WordPad'е и блокноте, расчеты ведет калькулятором, а в интернетах сидит исключительно через осла? Не смешите мои подковы.

Опиум
25-02-2016, 16:25
Не пробовал взять папки с длинной имени побольше, оказывается если имя шары вместе с путем не помещается в строке, то после имени шары идет перенос строки, а потом уже (на следующей строке) печатается путь к ней. Думаю через net share здесь сделать ничего не получится (точнее потребует много лишних усилий), проще будет получить это все через wmic »

чуть в сторону.... net files тоже этим страдает - выдавая неполный путь. Это можно както решить аналогично?

Piratos
25-02-2016, 16:27
Piratos, некомпетентность ещё никого не красила. Даже «шефа». »
В данном случае будет рассматриваться моя некомпетентность - не смог каракули в божеский вид привести. Как говорится в каждой конторе - свои тараканы.
Elven, Интернет нам запрещён, из-за грёбанной безопасности вот собираем всякие логи.

Iska
25-02-2016, 16:38
Piratos, я имел в виду — не берите некомпетентность своего «шефа» в пример. Это не «каракули», а нормальная кодировка OEM/866, принятая за основу для консоли Windows.

Я вполне понимаю — «Я начальник, ты дурак» и т.п. Но тем не менее.

Elven
25-02-2016, 17:00
net files тоже этим страдает - выдавая неполный путь. Это можно както решить аналогично? »
openfiles /?




© OSzone.net 2001-2012