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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

 

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



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
Цитата:
 нужно чтоб папка скопировалась
вы выносите мой мозг) какая папка, куда? раз уж пошла такая канитель, то давайте пошагово свои действия и что должно происходить?

----------
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.

Всего записей: 6474 | Зарегистр. 28-08-2008 | Отправлено: 19:12 11-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хорошо, пошагово: вообщем у меня есть бат файл, этот файл на флешке, если запускаешь этот батник, он копирует то что на флешке лежит вместе с ним на нужные мне буквы дисков, проблема в том что если я вставлю флешку человеку у которого под нужной мне буквой(предположительно директория жёсткого диска) дисковод, произойдёт ошибка и батник завершит работу, мне нужно чтобы батник понимал что на привод не надо копировать, а нужно его пропустить и выполнять следующие команды, в общем всё, никому мозг не собирался выносить , думаю описал свою проблему подробно.

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 19:37 11-01-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
почти, вопрос: копировать надо на все доступные локальные диски? или же только на те буквы что вы заранее определили и в случае их отсутствия тупо забыть про них?
 
Если 1-е то читаем мой пост выше

----------
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.

Всего записей: 6474 | Зарегистр. 28-08-2008 | Отправлено: 21:31 11-01-2011
BVV63



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

Код:
SetLocal EnableDelayedExpansion
For /F "Skip=1 Tokens=1 UseBackQ" %%0 In (`WMIC.Exe Path Win32_Volume Where DriveType^="3" Get DriveLetter /All`) Do ^
If "%%0" GEq "A" Set HDDPartitions=!HDDPartitions! %%0
Echo %HDDPartitions%

Разделы жёстких дисков в переменной. Правда, разделы подключенных внешних HDD (напр., с USB-интерфейсом) тоже, я не нашёл способа от этого избавиться.
Ну, а как уж работать с переменной, надеюсь, Вы знаете.

Всего записей: 3542 | Зарегистр. 17-08-2009 | Отправлено: 05:58 12-01-2011 | Исправлено: BVV63, 05:58 12-01-2011
firsteducation



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

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

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation> остановка при натыке на CD/DVD попробуй для начала ключ /c для комманды xcopy, который приводит к игнорированию ошибки

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 11:26 12-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YNY Здорово! щас попробую.
 
 
Добавлено:
YNY при использовании ключа /c скрипт просто останавливается и просит выбрать действие, указывая на ошибку, так что, команда xcopy без проверки работать не будет.

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

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation> при использовании ключа /c...  
покажи твой код
ключ должен быть первым, если их несколько  
Добавлено:
если ты передаешь в скрипт диски как параметр коммандной строки, то стоит делать проверку типа данной буквы и исплользовать goto, т.е. метки, для вариантов перехода

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 11:52 12-01-2011 | Исправлено: YNY, 12:17 12-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот мой код: xcopy "%cd%" "g:\%~p0" /E /H /Y /Q /C
 
Добавлено:
Перестановка очерёдности ключей роли не сыграло, оно и верно, все параметры команда xcopy проверяет ещё до иполнения: xcopy "%cd%" "g:\%~p0" /C /E /H /Y /Q

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

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation > по работе приведенного кода
 
результат выполнения1:
 
2
3
Не вижу никакой ошибки, вполне себе нормально выполняется последовательность в ХР!  
Добавлено:
отработку игнора DVD пока не намутил
 
Добавлено:
BVV63>Path Win32_Volume
в ХР не работает!
а работает
path Win32_LogicalDisk  Where DriveType="3" Get Caption
 

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



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

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 15:32 12-01-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation >предлагает выбрать действие...
у меня в XP SP3 никаких вариантов не предлогает и в W2k тоже  
вот попробуй такое как вариант
 
 
 
Добавлено:
а приведи предложение которое тебе выдается

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 16:05 12-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у меня пишет "устройство не готово", как от этого избавиться?

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

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у комманды xcopy  нет таких ответов ты это реально в cmd видешь ? возможно ты пытался зацепить сетевой диск

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 16:56 12-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот тело моего батника, там указана буква флоппи для примера, запусти у себя, должен выдать предупреждение(если не выдаст, то у меня особая винда!):
 
xcopy "%cd%" "a:\%~p0" /C /E /H /Y /Q
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo little mem!
goto exit
:abort
echo pressed key-ctrl+c
goto exit
:exit
pause

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 17:01 12-01-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
Эти извращения это все конечно хорошо, но блин скажите мне на кой хер копировать на фиксированные буквы, а не на реально используемые? Какая цель преследуется такой канителью? Это же полный бардак получается...

----------
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.

Всего записей: 6474 | Зарегистр. 28-08-2008 | Отправлено: 17:05 12-01-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation> предупреждение...
ну похоже что такое вылазит если пытаемся получить доступ к пустому приводу (в частности к флопникам), возмона что подобное и при наличии картридера выплывает

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 18:30 12-01-2011
firsteducation



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да YNY вот такой вот у меня подводный камешек, он преграда для меня.
 
 
Добавлено:
YNY посмотри скриптик, он показывает свойства всех драйвов, может как нить его переделать, ток чёт пока не доходит до меня, как это сделать, вот:
 
echo LIST VOLUME>script.tmp
diskpart /s script.tmp
del script.tmp
pause

Всего записей: 95 | Зарегистр. 19-10-2010 | Отправлено: 18:33 12-01-2011
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation> RE:предупреждение...
Вот такой скрипт не даст выйти, как я думаю, сообщению которое тебе мешает, но не исключает DVD, который не выдает сообщений о недоступности устройства.
Если и его захочешь обойти, то пиши
 
 
Добавлено:
Как плюшка: можешь создать лог файл для проверки работы скрипта.  
Геморрой с созданием файла (e1.txt) мне пришлось делать т.к. cmd ругается на ('WMIC.Exe Path Win32_LogicalDisk Where DriveType="2" get Caption').

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 19:49 12-01-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
firsteducation
Вот добрался до винды... А то в bash как-то не очень батники думать)
Вот что вышло, старался максимально под ваши задачи:
Код:
@echo off
 
rem Athor: Alukardd
rem created: 12.01.2011
rem for M$ Windows RU only!!!
rem script must be encodуed in cp866 (thit is due to using command "findstr")
rem tested on WinXP SP2 RU
 
 
rem declaration of drives that need copy to
set drives="A,B,C,D,E,F"
rem declaration of folder from copy (folder itself won't be copied)
set cd=".\qq"
rem declaration of destination folder (files will puts to it)
set p0=folder\
 
echo LIST VOLUME>script.tmp
for /f "tokens=1-3*" %%i in ('diskpart /s script.tmp ^| findstr /i "Раздел"') do (
   echo %drives% | findstr /i %%k > nul
   if errorlevel 0 @xcopy %cd% "%%k:\%p0%" /C /E /H /Y /Q
)
del script.tmp
 
:exit
exit 0
Примичание: т.к. я использовал русские символы в команде findstr, то кодировка скрипта должна быть cp866

----------
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.

Всего записей: 6474 | Зарегистр. 28-08-2008 | Отправлено: 22:26 12-01-2011 | Исправлено: Alukardd, 22:35 12-01-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.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru