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

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

 

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

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

Цитата:
sergiologino

скорей это хвосты от обновления какой нить нужной проги типа 1с или еще чего нить, но если надоедает, убей скрипт и ключ в реестре либо убей или поредактируй
 
Добавлено:
либо эт автоудалялка вредного обновления от микрософт  
 
Добавлено:
нормальный ключ в реестре выглядит так:
 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit", "C:\WINDOWS\system32\userinit.exe," "REG_SZ"
***
Set file = fso.getfile(sfname)  
теперь в file хранится ссылка на update.exe
выражение file.copy nfname правильно будет выглядеть вот так: file.copy(nfname), -- тут происходит копирование update.exe в windir & "\system32 с переименованием в tm8259.exe и если такой файл tm8259.exe с атрибутами +s +h +r (сис, скрыт, читать) уже есть, то возмона скрипту они (эти разрешения) мешают скопировать и переименовать, либо дополнительно наложены какие-то разрешения.  
***
Скрипт не сможет запустить скрытый файл если в проводнике виндовс не будет поставленно отображение скрытых файлов
 
Добавлено:
замечания не касающесеся сути вопроса напрямую:
 
 
Добавлено:
Атрибуты можно устанавливать и без cmd

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 07:05 18-11-2008 | Исправлено: YNY, 09:12 18-11-2008
PhoenixUA



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

Да вирус это.
Никакая нормальная программа не будет писаться в system32 под таким странным именем, да еще ставить атрибуты system и hidden. Плюс хитрый запуск из реестра.

Всего записей: 2184 | Зарегистр. 17-11-2005 | Отправлено: 12:24 18-11-2008
zzxx1488

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Updatings are already installed!
 
судя по инглишу это вирус.

Всего записей: 62 | Зарегистр. 04-10-2008 | Отправлено: 15:20 18-11-2008
YNY

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

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 05:58 19-11-2008
pav



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

Цитата:
Антивирусы не реагируют.

Менять антивирус.
Сорри за

Всего записей: 1856 | Зарегистр. 27-01-2002 | Отправлено: 15:23 19-11-2008
YNY

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
можно ли при помощи WQL просмотреть HKEY_USERS

Всего записей: 476 | Зарегистр. 18-05-2006 | Отправлено: 07:54 03-12-2008
AcidSly



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
привет, подскажите как через batch-файл достать дату создания файла (формата yyyy-mm-dd)
спс

Всего записей: 401 | Зарегистр. 24-01-2003 | Отправлено: 12:54 03-12-2008
rkhodjaev



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 А не подскажите,как сделать батник который будет добавлять ИП-адрес альтернативного ДНС сервера?Я знаю,что этот батник добавляет ИП для пред.ДНС сервера >
 netsh interface ip set dns "Подключение по локальной сети" static IP_address

Всего записей: 1002 | Зарегистр. 05-05-2006 | Отправлено: 15:02 03-12-2008 | Исправлено: rkhodjaev, 15:04 03-12-2008
AlexRus227

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ не подскажите как правильно написать батник для подкл диска для каждого юзера к своей папке ??  
 
@echo on
net use Y: /delete
Net use Y: \\Backup\$login$  ??  или как  
 
Добавлено:
$login$ = $username$ всем спасиб

Всего записей: 90 | Зарегистр. 07-12-2005 | Отправлено: 14:20 04-12-2008
DiZka



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток
Задача: есть файлик ini, на клиентах его надо всем массово заменить, если дата модификации его меньше 10.12.2008, если дата больше то заменять не надо, если файла нет на клиенте то ничего делать не надо  
Файлик лежит на шаре  
Вот "написал" тут скриптик но чет он меняет в любом случае т. е. как бы ему пофиг на дату изменния файла.... а как чтоб не делал ничего если файла нет, не знаю помогите знающие люди.
Писал по шаблону так что сильно не пинайте...  
 

Код:
 
'Copy ABBY Lingvo config file
set net=CreateObject("WScript.Network")
strComputer=net.ComputerName
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "H:\Distributives\Software\Abby Lingvo 11 cfg\Lingvo.ini" , "C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini",True
Set objFile = objFSO.GetFile("C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini")
if objFile.DateLastModified<"10.12.2008" then
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2:Win32_Process")
Error = objWMIService.Create("net send ws tnsnames overwritted", null, null, intProcessID)
end if
 

Пошел другим путем... думаю более легким... но все равно не знаю как сделать есть код :
 

Код:
Dim FSO,FileName 'Объявляем переменные
'Создаем объект FileSystemObject
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
FileName = "C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini"
if  FSO.FileExists(FileName)  Then
  'Выводим информацию на экран
  WScript.Echo "Файл " & FileName & " существует"
else
  'Выводим информацию на экран
  WScript.Echo "Файл " & FileName & " не существует"  
end if
 

 
Он проверяет наличие файла на диске... если находить то выводит на экран что существует если нет то наоборот... так вот как бы это заменить на замену строки в файле т.е.
Если файл есть то найти в нем строку АААА и замнеить ее на BBBB если файл не найден то ничего не делать....

Всего записей: 374 | Зарегистр. 16-08-2005 | Отправлено: 15:59 10-12-2008 | Исправлено: DiZka, 09:40 11-12-2008
Feeer

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

Цитата:
[/q]
[q]Код:Dim FSO,FileName 'Объявляем переменные  
'Создаем объект FileSystemObject  
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")  
FileName = "C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini"  
if  FSO.FileExists(FileName)  Then  
  'Выводим информацию на экран  
  WScript.Echo "Файл " & FileName & " существует"  
else  
  'Выводим информацию на экран  
  WScript.Echo "Файл " & FileName & " не существует"  
end if  
 
 
 
Он проверяет наличие файла на диске... если находить то выводит на экран что существует если нет то наоборот... так вот как бы это заменить на замену строки в файле т.е.  
Если файл есть то найти в нем строку АААА и замнеить ее на BBBB если файл не найден то ничего не делать....

 
var fso = new ActiveXObject("Scripting.FileSystemObject");
if (fso.FileExists("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini")) {
var f = fso.OpenTextFile("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini", 1, false);
var a="Строка для замены";  
var b="На что меняем";  
var p, s='',q='';
    for (var l=1;f.AtEndOfStream != true;l+1)
   {    
       
     s = f.ReadLine();
     if(a==s){p=s.replace(a,b); q = q + p + "\n";}; else {q = q + s + "\n"}
         
   };
f.Close( );  
var f = fso.OpenTextFile("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini", 2, true);
 
f.Write(q);  
f.Close( );  
}; else { WScript.Echo("Файла не существует")};
 
Должно работать

Всего записей: 9 | Зарегистр. 25-08-2008 | Отправлено: 11:39 12-12-2008
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, есть скрипт, который в одном текстовом окне делает Select all + Copy, в другое окно делает Paste (через нажатие клавиш). Но хотелось бы еще добавить промежуточную процедуру, фильтрование текста в буфере обмена, а именно удалить строки содержащие +++CLOSE(любые символы)+++, и только после этого вставить текст в нужное окно.
 
Заранее благодарен!

Всего записей: 1033 | Зарегистр. 30-05-2006 | Отправлено: 17:32 12-12-2008
target27

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я думаю тут могут возхникнуть сложности. Какой текст копируешь? Какая кодировка и т.д.

Всего записей: 3 | Зарегистр. 09-09-2008 | Отправлено: 09:51 13-12-2008 | Исправлено: target27, 09:54 13-12-2008
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кодировка UTF8, текст такого вида:
 
blabla sdlkfjsldkfjl sdlfkjsld kfsldkfjlsdjf
+++CLOSE 23123+++
sflksdlkfs
sdfs
d
sfsfssdf $%#% ^#%^$
#$%%@@$#
dsadsdfsdf
+++CLOSE 23523+++
+++CLOSE 23623+++
+++CLOSE 123993+++
+++CLOSE 142223+++
sflkdfjlssd
sd
fdsdf
+++CLOSE 123993+++
*** slfdksl ** sdlfsd
 
Надо избавиться от +++CLOSE *+++

Всего записей: 1033 | Зарегистр. 30-05-2006 | Отправлено: 11:24 13-12-2008 | Исправлено: gap5, 11:26 13-12-2008
DiZka



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Feeer а это вобще vbscript ? не jscript -ли?

Код:
var fso = new ActiveXObject("Scripting.FileSystemObject");
if (fso.FileExists("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini")) {
var f = fso.OpenTextFile("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini", 1, false);
var a="PathToLicenseBase=\\Srvbackdc\ABBYY Lingvo 11 remote install\License Manager";  
var b="PathToLicenseBase=\\Srvexchshvtn\ABBYY Lingvo 11\License Manager";  
var p, s='',q='';
    for (var l=1;f.AtEndOfStream != true;l+1)
   {    
       
     s = f.ReadLine();
     if(a==s){p=s.replace(a,b); q = q + p + "\n";}; else {q = q + s + "\n"}
         
   };
f.Close( );  
var f = fso.OpenTextFile("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini", 2, true);
 
f.Write(q);  
f.Close( );  
}; else { WScript.Echo("Файла не существует")};  

 
Ошибка:
Строка 1
Символ 28
Ошибка Предполагается наличие окончания инструкции
-----------------------------------
И еще написал вот что с горем пополам... функция та же только тупо замена файла.... хочу узнать по поводу криворукости написания этого кода? Скрипт вроде отрабатывается, но я сомневаюсь в чистоте его написания, тут все нормально или лучше подправить?  
 

Код:
Dim FSO,FileName 'Объявляем переменные
Set FSO = WScript.CreateObject("Scripting.FileSystemObject") 'Создаем объект FSO
Set objFSO = CreateObject("Scripting.FileSystemObject") 'Создаем объект objFSO
FileName = "C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini" 'Задаем переменную FileName
if  FSO.FileExists(FileName)  Then 'Проверка наличия Lingvo.ini
Set objFile = objFSO.GetFile("C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini") 'Создаем объект objFile
if objFile.DateLastModified<"15.12.2008" then 'Проверка даты создания Lingvo.ini
objFSO.CopyFile "H:\Distributives\Software\Abby Lingvo 11 cfg\Lingvo.ini" , "C:\Program Files\ABBYY Lingvo 11 English-Russian Dictionary\Lingvo.ini",True 'Копирование Lingvo.ini
end if
else
end if  

 
UPD: Помогите подправить скрипт скрипт не отрабатывает если получается вот так:
Если стоит DateLastModified<"15.12.2008" и сегодня 15.12.2008 скрипт работает нормалаьно отрабатывает... если ставишь в скрипте например DateLastModified<"12.12.2008" а сегодня 15.12.2008 скрипт перестает отрабатывать... т.е. если сегодня дата как в скрипте то скрипт работает, а если меньше то не работает....

Всего записей: 374 | Зарегистр. 16-08-2005 | Отправлено: 09:50 15-12-2008 | Исправлено: DiZka, 10:39 15-12-2008
Feeer

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

Цитата:
Feeer а это вобще vbscript ? не jscript -ли?  

 
jscript, проверил еще раз, работает без ошибок.

Всего записей: 9 | Зарегистр. 25-08-2008 | Отправлено: 15:51 15-12-2008
Feeer

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

Цитата:
UPD: Помогите подправить скрипт скрипт не отрабатывает если получается вот так:  
Если стоит DateLastModified<"15.12.2008" и сегодня 15.12.2008 скрипт работает нормалаьно отрабатывает... если ставишь в скрипте например DateLastModified<"12.12.2008" а сегодня 15.12.2008 скрипт перестает отрабатывать... т.е. если сегодня дата как в скрипте то скрипт работает, а если меньше то не работает....

Вот на jscript
 
var file = "C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini";
var fso = WScript.CreateObject("Scripting.FileSystemObject");
if (fso.FileExists("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\Lingvo.ini"))
{
var j = fso.GetFile(file);
var d = j.DateLastModified; // Дата изменения файла
MyDate = new Date (2008,11,18); //Контрольная дата (месяцы от 0 до 11 )
if (MyDate > d)
  {  
  var f = fso.GetFile("C:\\Distributives\\Software\\Abby Lingvo 11 cfg\\Lingvo.ini");
  f.Copy("C:\\Program Files\\ABBYY Lingvo 11 English-Russian Dictionary\\");  
  };
   
};

Всего записей: 9 | Зарегистр. 25-08-2008 | Отправлено: 12:07 17-12-2008
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
многие достают с оптимизацией хрю, каждый раз выключать службы, [ntfs, point resored, TCP, и п.п.п...]  
Есть идея написать скрипт варианта игровой модели оптимизации хрю, так вот может уже есть реализация?...

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 17:23 17-12-2008
korn3r



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
sc config сервис start= demand (disabled)
зачем тут скрипты?

Всего записей: 496 | Зарегистр. 19-10-2005 | Отправлено: 19:40 19-12-2008 | Исправлено: korn3r, 19:41 19-12-2008
IDaho

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

Всего записей: 62 | Зарегистр. 06-02-2007 | Отправлено: 14:03 24-12-2008
   

Страницы: 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