Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

   

FreemanRU



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
 

                               Коллеги-администраторы  ....  


Часть 2я

Часть 1
Думаю каждый из вас сталкивался с необходимостью выполнять некие несложные рутинные операции, на котороые уходит много драгоценного времени.
 Например, создать определенную структуру каталогов для каждого пользователя домена, изменить некие параметры в профилях всех или части пользователей, изменить полномочия/владельца однотипных файлов в разных каталогах т.д.  
Я, как сисадмин, тоже не раз был вынужден делать все это.  Руками делать это тоскливо и муторно, как вы понимаете. Должен заметить, что по неким "религиозным" убеждениям я всегда старался избегать любых отношений с бейсиком и его производными. Еще мой отец учил меня не иметь с ним никаких дел. Буквально. А теперь я учу своего сына тому же. Но, тем не менее, полностью избежать этого, по всей видимости, невозможно, тем более, что бейсик от M$ сейчас уже далеко не та "лапша", которой он был изначально, а современный структурированный язык, нашедший множество применений. Похоже, что для меня в очередной раз настала пора выучить еще что-то. Знаете, как курильщик много раз безуспешно пытается бросить курить, так и я не раз пытался подступиться к изучению VBScript, но пока никак не одолел. Лень, знаете ли. А инструмент в делах административных был бы весьма пользительный, должен заметить, для быстрого написания всякого рода скриптов.

 
    Внимание   !  !  !  

  • Поскольку данный топ весьма не мал, не забывайте  использовать "версию для печати" для более удобного поиска по теме. А также МЕГА ПОИСКОВИК от NEPa

  • Дабы не раздувать топ,  примеры своих  скриптов  заключаем в тег  "more"

Консольные команды. Командный интерпретатор

Windows Script Host (WSH) &  VBScript  &  JScript


Вышеперечисленные буки можно  взять здесь

    ТOOLS :
  1. Autoit+readme.rus
  2. Scriptologic
  3. AutoMate
  4. KIXTART
  5. nnCron-Планировщик с поддержкой скриптового языка --  РЕКОМЕНДУЮ
  6. WGET, GREP, GETMAIL, BLAT for Windows замечательные консольные утилиты
  7. 4dos/4nt -- отличная замена стандартного коммандного интерпретатора  
  8. JudoScript - java подобный скриптовый язык с исходниками
  9. VBS2EXE - утилита для компиляции vbs и js скриптов в exe выдранная из пакета PrimalScript

    Дружественные темы :
  1. Автоматическая (unattended) установка Windows
  2. Интересные команды при работе с Linux
  3. Отличный сайт по скриптингу, и не только
  4. Использование KIX
  5. Использование WMI
  6. Программирование "удобняшек" на VBScript

 
Подробнее...
Создается по материалам данного топа

 
Надеюсь данная тема будет полезна для Вас.
 Предложения по реформированию шапки принимаю в ПМ Jovanotti

 

Всего записей: 3794 | Зарегистр. 16-07-2004 | Отправлено: 17:27 11-12-2006 | Исправлено: Smitis, 12:30 20-08-2008
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
прочитать xcopy /?
и не задавать глупых вопросов!
з.ы. уберите опцию /E

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 19:07 24-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation

Код:
set "DV=E:"
for /F "skip=1" %%i IN ('WMIC.Exe Path Win32_LogicalDisk.DriveType^="2" get Caption') Do if /i "%%i"=="%DV%" goto StCopy1  
goto qw
:StCopy1  
xcopy "%cd%" "%DV%%~p0" /C /H /Y /Q
exit /b

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 19:15 24-02-2011 | Исправлено: Rush, 19:27 24-02-2011
Xconn



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!  
Суть сабжа - необходимо составить отчет от составе групп "Администраторы" на всех машинах сети. В сети порядка 600 хостов - XP SP3. и7-ка. Как это сделать с помощью скрипта или софта, так что бы на хостах не осталось следов клиентской части? Попробовал Everest 5.50 и DW 7 - они не умеют.

Всего записей: 33 | Зарегистр. 15-12-2010 | Отправлено: 09:55 25-02-2011
BVV63



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xconn

Код:
Echo %ComputerName% >> Файл
Net LocalGroup "Администраторы" >> Файл  

"Файл" где-нить на шаре, куда с компов есть доступ.

Цитата:
В сети порядка 600 хостов

Домен, наверняка. Запустите батник при помощи PsExec с параметром *, он на всех работающих в данный момент компах домена (по очереди) запустит батник.

Всего записей: 3542 | Зарегистр. 17-08-2009 | Отправлено: 10:43 25-02-2011 | Исправлено: BVV63, 10:46 25-02-2011
Xconn



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
не получается.  
 
дал такую команду PsExec.exe \\seven -c Admins0.cmd (seven - тестовая виртуалка). на обе команды батника ответ - "отказано в доступе"
 
Добавлено:
З.Ы. запустил батничек на этой же виртуалке из под простого юзера - отработал без замечаний. Что то тут не так

Всего записей: 33 | Зарегистр. 15-12-2010 | Отправлено: 12:16 25-02-2011
BVV63



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xconn
Попробуйте добавить в строку запуска логин-пароль (параметры -u и -p), а также поглядите, может стоит использовать ещё параметры -c и -s.

Всего записей: 3542 | Зарегистр. 17-08-2009 | Отправлено: 12:26 25-02-2011
Xconn



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ларчик открывался просто - необходимо было указать свои учетные данные. Спасибо за наводку на покет утилиток. Весьма полезные инструменты

Всего записей: 33 | Зарегистр. 15-12-2010 | Отправлено: 12:55 25-02-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Люди помогите, как код оптимизировать, у меня если скрипт с этим кодом расположен не в корне диска, происходит копирование всех папок в пути, а мне нужно чтоб только папку с этим скриптом копировал, что делать?
YNY ПОМОГИ!!!
 
вот пример:
set DV=E:
set MI=0
WMIC.Exe Path Win32_LogicalDisk Where DriveType="2" get Caption > e1.txt
for /F "skip=1" %%i IN ('type e1.txt') Do (if /i %%i==%DV% (set MI=1))
if /i %MI% NEQ 1 goto StCopy1
goto qw
:StCopy1
xcopy "%cd%" "%DV%%~p0" /C /H /Y /Q  

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 22:03 25-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation

Код:
set "DV=E:"
for /F "skip=1" %%i IN ('WMIC.Exe Path Win32_LogicalDisk.DriveType^="2" get Caption') Do if /i %%i==%DV% call:StCopy1 "%cd%"
goto qw
:StCopy1
xcopy %1 "%DV%\%~nx1\" /C /H /Y /Q
exit /b

 
Добавлено:
Только непонятны твои выкрутасы. Можно ведь просто:

Код:
set "DV=E:"
if exist %DV% call:StCopy1 "%cd%"
goto qw
:StCopy1
xcopy %1 "%DV%\%~nx1\" /C /H /Y /Q
exit /b

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 05:45 26-02-2011 | Исправлено: Rush, 05:47 26-02-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rush твой код у меня не работает как надо, он копирует только файлы в папке, а папку нет, вопрос остался открытым.

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 07:17 26-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation

Цитата:
он копирует только файлы в папке, а папку не

Какую папку? Ту в которой находится батник или подпапки в папке с батником?
 
Добавлено:
если подпапки, то верни /E

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 08:30 26-02-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Какую папку? Ту в которой находится батник или подпапки в папке с батником?  

Rush Только ту в которой находится батник.
 

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 11:48 26-02-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
поправка№1: вместо "%DV%%~p0" должно быть "%DV:~0,2%%~p0" (чтобы после буквы диска с двоеточием не было не нужного пробела!).
Если хотим только содержимое папки, а не ее саму, то:
xcopy "%cd%" "%DV:~0,2%\" /C /E /H /Y /Q .
Если подпапки не нужны, то /E не пишем.
Если не хотим сохранять "полный" путь (т.е. относительный) в месте копирования, то  
set ff=%~p0
xcopy "%cd%" "%DV:~0,2%%ff:~-3%" /C /E /H /Y /Q

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 12:22 26-02-2011 | Исправлено: YNY, 12:50 26-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation

Цитата:
Rush Только ту в которой находится батник.

Что "только ту" - копирует или нет? В моем коде все работает как надо - если нужно с подпапками верни /e.

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 12:37 26-02-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY

Цитата:
Если не хотим сохранять "полный" путь (т.е. относительный) в месте копирования, то  
set ff=%~p0
xcopy "%cd%" "%DV:~0,2%%ff:~-3%" /C /E /H /Y /Q

Кажется подходит, но от имени файла остаются последние две буквы, а как поменять количество букв?(да вопрос ламерский, может быть, но очень надо!).

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 18:08 26-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
Так ты мне так и не объяснил, что в моем коде у тебя не работает. Приведи, пожалуйста, полностью батник где ты вставлял мой код и он не заработал. Потому что у меня все работает.
 
 
YNY
Цитата:
set ff=%~p0  
xcopy "%cd%" "%DV:~0,2%%ff:~-3%" /C /E /H /Y /Q

Скажи, пожалуйста, что должно, по твоему, делать вот это - %ff:~-3%

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 21:39 26-02-2011 | Исправлено: Rush, 21:40 26-02-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation> от имени файла остаются последние две буквы...
Не понимаю о чем ты говоришь, т.к. у меня все нормально и никаких букв от имени файла у меня не остается!  
 
Например для файла C:\1\2\test.bat
имя файла - test
расширение - .bat
полное имя - C:\1\2\test.bat
 
Rush> %ff:~-3%
 %~p0 -- возвращает путь к скрипту без имени диска,  
set ff=%~p0 -- запись в переменную ff
%ff:~-3% -- возвращает значение "\имя папки\", в которой лежит скрипт путем вырезания 3-х символов начиная с конца, при условии что "имя папки" состоит из 1-го символа) если "имя папки" не == одному символу, то нуна вырезать не 3, а число символов в "имя папки" +2)
 

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 12:49 27-02-2011 | Исправлено: YNY, 14:02 27-02-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY
Цитата:
%ff:~-3% -- возвращает значение "\имя папки\"

Цитата:
если "имя папки" не == одному символу, то нуна вырезать не 3, а число символов в "имя папки" +2

Вот что я хотел узнать, СПС !
 
 

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 14:16 27-02-2011
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY
А если переложить батник в другую папку с другим количеством символов, то получится ерунда. %ff:~-3% возвращает всего лишь три последних символа переменной.
firsteducation
Я так понял, ты мои вопросы намеренно игнорируешь. Ладно, общайтесь между собой.

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 04:05 28-02-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rush> А если переложить батник в другую папку... ну bat это не PowerShell и не W(C)Script, и с его ограничениями очень трудно справиться: я пробовал рез-ты записать в файлы (%~p0>test1.txt, %cd%>test2.txt) дабы как-то извернуться с любым вариантом "имя папки", но что-то процесс замирает на долго так что....  
 

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 08:25 28-02-2011
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2
ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru