Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Автоматизация администрирования

Автор: rosalin
Дата сообщения: 09.08.2006 12:15
'Удаление программы

'Этим скриптом можно удалить любую установленную через Windows Installer программу. В этом примере её имя LeftSoft Program.

'strComputer = "."-для локального компьютера для остальных меняем на имя компа
strComputer = "ws14"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colSoftware = objWMIService.ExecQuery _
'("Select * from Win32_Product Where Name = 'LeftSoft Program'")
("Select * from Win32_Product Where IdentifyingNumber='{02ADB122-1F47-4B32-B0EA-33534B5A07DF}'")

For Each objSoftware in colSoftware
objSoftware.Uninstall()
Next
Автор: FreemanRU
Дата сообщения: 09.08.2006 12:22
rosalin
У тебя эта строка "висит", т.е. тебе надо её подвинуть вверх, убрав строку с комментарием. Вот именно по этому я не люблю пользоваться переносом строки (подчеркиванием)
Автор: rosalin
Дата сообщения: 09.08.2006 12:37
FreemanRU
Вроде заработало

А можно сделать что бы скрипт срабатывал выдавал список програм и версий и при выборе удалял программу
Автор: FreemanRU
Дата сообщения: 09.08.2006 13:25
rosalin
Тебе надо сделать HTA. В нем можно сделать интерфейс.
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/hta/overview/htaoverview.asp
Автор: rosalin
Дата сообщения: 10.08.2006 09:35
FreemanRU
Подскажите что за ошибка в сервере сценариев

Oшибкa: Библиoтeкa нe зapeгиcтpиpoвaнa.
Кoд: 8002801D
Иcтoчник: (null)

Стала возникать после удаления какой то проги

рабочие скрипты не выпоняються
Автор: FreemanRU
Дата сообщения: 10.08.2006 09:41
rosalin
из PRB: Installation of WSH 5.5 for Windows 2000 May Cause Scripts to Stop Functioning

Цитата:

CAUSE
The Windows Script version 5.5 for Windows 2000 install (scripten.exe) does not handle the case in which the vbscript.dll and/or jscript.dll files are in use. If this situation occurs, the install script does not properly register the .dlls and, when the computer is rebooted, no scripts that use either .dll function correctly.
Back to the top

RESOLUTION
To resolve this problem, do one of the following:
• Run the Windows Script 5.5 install again. At this point, the .dlls cannot be in use because they are not registered so the same situation does not occur.
• Register the .dlls manually. These dlls are located in the system32 directory. To register them, type the following commands at a command prompt or in the Run window on the Start button:
• regsvr32 %systemroot%\system32\vbscript.dll
• regsvr32 %systemroot%\system32\jscript.dll
Автор: rosalin
Дата сообщения: 10.08.2006 10:09
FreemanRU


Цитата:
RESOLUTION
To resolve this problem, do one of the following:
• Run the Windows Script 5.5 install again. At this point, the .dlls cannot be in use because they are not registered so the same situation does not occur.
• Register the .dlls manually. These dlls are located in the system32 directory. To register them, type the following commands at a command prompt or in the Run window on the Start button:
• regsvr32 %systemroot%\system32\vbscript.dll
• regsvr32 %systemroot%\system32\jscript.dll


не помогло поставил обратно прогу все заработало прога я думаю плотно связана с .vbs

занимаеться удалением прог с удаленных машин
Автор: MC_VARGAR
Дата сообщения: 10.08.2006 10:54
Всем привет!
Думаю те кто занимался перетаскиванием пользователей из старого домена в новый сталкивались с проблемой миграции локальных профилей пользователей (чтобы у них осталось всё так-же как в старом в домене, настройки почты, папка Мои документы и т.д., но они бы работали уже в новом).
Вот моё решение, как можно избавиться от копирования профилей изменения рееестра и т.п. но всё таки есть некоторые проблемы.... но о них чуть по позжее.
Перед всей этой операцией были мигрированы учётные записи пользователей, компьютеров и т.д. с сохранением истории SID. Старый домен на NT4 новый домен на Win2k3

Вот как это выглядит:
Кладу файлы на контр.домена в папку NETLOGON:
migrate.bat
migrate.reg
netdom.exe
move.bat
moveuser.exe
domain_user.txt

Сначала в старом домене (NT4.0) я пользователю в профиль прописываю запускать при загрузке батник migrate.bat

migrate.bat

Код:
#######очистка временных папок пользователя########
del "%USERPROFILE%\Local Settings\History\"*.* /f /s /q
del "%USERPROFILE%\Local Settings\Temp\"*.* /f /s /q
del "%USERPROFILE%\Local Settings\Temporary Internet Files\"*.* /f /s /q
del "%USERPROFILE%\Local Settings\Recent\"*.* /f /s /q
del "%USERPROFILE%\Cookies\"*.* /f /s /q
del "%SystemRoot%\Temp\"*.* /f /s /q
del "%SystemRoot%\Downloaded Installations\"*.* /f /s /q
del "%SystemRoot%\"*.log /f /q
del "%SystemDrive%\"*.log /f /q
del "%SystemDrive%\Recycler\"*.* /f /q /s
del "%SystemDrive%\System Volume Information\"*.* /f /q /s
#########изменяет строку ВОЙТИ В: OldDomain на ВОЙТИ В: NewDomain###########
regedit /s “\\OldDomainController\NETLOGON\migrate.reg"
#######смена принадлежности к домену у компьютера########
netdom move %COMPUTERNAME% /domain:NewDomain /UserD:ADMIN /PasswordD:1234 /REBoot:5
Автор: alexxxn
Дата сообщения: 10.08.2006 11:22
это, конечно, утилита не командной строки... НО!!! все упрощает - Active Directory Migration Tool.
скачать можно - http://www.microsoft.com/downloads/details.aspx?familyid=6F86937B-533A-466D-A8E8-AFF85AD3D212&displaylang=en
Автор: MC_VARGAR
Дата сообщения: 10.08.2006 12:28
Этап с использованием Active Directory Migration Tool, уже был пройден. При помощи неё всё учётки компов и пользователей перемещены в новый домен.
Мне сейчас нужна утилита которой я мог бы сменить домен в который входит компьютер пользователя. А то бегать по 500 компам и у каждого нажимать сменить домен, не очень спортивно)
Автор: Sk1f
Дата сообщения: 10.08.2006 12:44
MC_VARGAR


Цитата:

Const ADS_SCOPE_SUBTREE = 2

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCOmmand.ActiveConnection = objConnection
objCommand.CommandText = _
"Select Name, Location from 'LDAP://DC=fabrikam,DC=com' " _
& "Where objectClass='computer'"
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF
Set objOU = GetObject("LDAP://" & objRecordSet.Fields("Name").Value & ",dc=NA,dc=fabrikam,dc=com")
objOU.MoveHere "LDAP://" & objRecordSet.Fields("Name").Value & ",cn=Users,dc=fabrikam,dc=com", _
vbNullString
Wscript.Echo "Computer Name: " & objRecordSet.Fields("Name").Value
objRecordSet.MoveNext
Loop


первое выделение - из какого домена
второе выделение - в какой домен

Сохранить с разрешением .vbs
Запускай из cmd -> cscript "путь к скрипту"
Автор: MC_VARGAR
Дата сообщения: 10.08.2006 13:38
Sk1f
Спасиб!!!, сейчас буду пробовать)
Автор: AleXeyS55
Дата сообщения: 10.08.2006 15:18
Подскажите пожалуйся скрипт который перебирает все окмпы в домене и сохраняет в файл их программно-аппаратную конфигурацию, как можно более подробно. Если кто знает как такое возможно.
Автор: Sk1f
Дата сообщения: 10.08.2006 16:28
AleXeyS55 укажи какую именно аппаратную состовляющую ты хочешь знать?


Добавлено:
Можно слишком много информации узнать и потом подумай как у тебя будет разрастаться такой .txt файл, если в нем будет около 50 записей только о одном компьютере. А если компьютеров до .........


Добавлено:
Мой тебе совет скачай -

The Portable Script Center

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=B4CB2678-DAFB-4E30-B2DA-B8814FE2DA5A
Или On-line version этого
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true

Там есть все.


Автор: AleXeyS55
Дата сообщения: 11.08.2006 08:03
Sk1f
Спасибо за ссылку. Места хватает в общем то, файлы будут по одному на отдельный комп. Которых совсем не до ...
Автор: Sk1f
Дата сообщения: 14.08.2006 15:46

Цитата:

Возвращает символ с конкретным номером из строки

function charAtTest(n){
var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; // Initialize variable.
var s; // Declare variable.
s = str.charAt(n - 1); // Get correct character
// from position n – 1.
return(s); // Return character.
}


Есть ли аналоги в VBScript?
Автор: stroboscope
Дата сообщения: 21.08.2006 09:31

Кто нибудь знает, как скриптом очистить пользовательский ( custom) журнал событий?

пробовал при помощи win32_NTEventlogFile, но он не возвращает пользовательский лог, только стандартные ( application, system, secyrity)

события из лога читаются замечательно


вот так пытался делать:

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2")

Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName='scripts'")

For Each objLogfile in colLogFiles
errBackupLog = objLogFile.BackupEventLog("c:\scripts\scripts.evt")
If errBackupLog <> 0 Then
Wscript.Echo "The Application event log could not be backed up."
Else
objLogFile.ClearEventLog()
End If
Next
Автор: urel
Дата сообщения: 21.08.2006 13:08
2Sk1f

s="1234567890"
c=Mid(s,6,1)
Автор: Sk1f
Дата сообщения: 21.08.2006 14:50
urel громадное спасибо.
Автор: Sk1f
Дата сообщения: 23.08.2006 12:51
Люди этот скрипт добавляет и user-ов и computer-ы в группу?


Цитата:

Const ADS_PROPERTY_APPEND = 3

Set objGroup = GetObject _
("LDAP://cn=Atl-Users,cn=Users,dc=NA,dc=fabrikam,dc=com")
objGroup.PutEx ADS_PROPERTY_APPEND, _
"member", Array("cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objGroup.SetInfo

Set objGroup = GetObject _
("LDAP://cn=NA-Employees,cn=Users,dc=NA,dc=fabrikam,dc=com")
objGroup.PutEx ADS_PROPERTY_APPEND, _
"member", Array("cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objGroup.SetInfo



А то у меня ругается на строчку, когда добавляю computer в группу :

Цитата:

objGroup.PutEx ADS_PROPERTY_APPEND, _
"member", Array("cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
Автор: urel
Дата сообщения: 23.08.2006 13:16
Sk1f

пробовал - работает, а что за ошибка?
Автор: FreemanRU
Дата сообщения: 23.08.2006 13:24
Sk1f

Цитата:
А то у меня ругается на строчку, когда добавляю computer в группу :

Цитата:
objGroup.PutEx ADS_PROPERTY_APPEND, _
"member", Array("cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")

Ты надеюсь сменил cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com на свой домен?
Автор: Sk1f
Дата сообщения: 23.08.2006 13:29
FreemanRU, конечно вот мой скрипт - .

Цитата:

Option Explicit

Dim RootDSE, DefaultDomain
Dim objFSO, objTextFile, strNextLine
Dim objPath
Dim objGroup

Const ForReading = 1
Const ADS_PROPERTY_APPEND = 3

Set RootDSE = GetObject("LDAP://RootDSE")
Set DefaultDomain = GetObject("LDAP://" & RootDSE.Get("DefaultNamingContext"))
Set objFSO = CreateObject("Scripting.FileSystemObject")

objPath= "C:\Documents and Settings\aleksandr\Рабочий стол\Result_DN.txt"
' Change PATH TO FILE

Set objTextFile = objFSO.OpenTextFile(objPath, ForReading)

WScript.Echo DefaultDomain.distinguishedName

Do Until objTextFile.AtEndOfStream
strNextLine = objTextFile.Readline
'Wscript.Echo(strNextLine)
Wscript.Echo ("LDAP://CN=ComputersTest,OU='Специальные учетные записи и группы',OU='Нереплицируемые пользователи'," & DefaultDomain.distinguishedName)

Set objGroup = GetObject("LDAP://CN=ComputerCSP,OU=Специальные учетные записи,OU=Нереплицируемые пользоватли," & DefaultDomain.distinguishedName)
objGroup.PutEx ADS_PROPERTY_APPEND, "member", Array(strNextLine)
objGroup.SetInfo
Loop


Ошибка на выделенной строчке.

В текстовом файле такие строчки:
"cn=ivanovaa,ou=test,ou=компьютеры,dc=test,dc=ru"






Автор: FreemanRU
Дата сообщения: 23.08.2006 13:32
Sk1f

Цитата:
Ошибка на выделенной строчке.

Какая ошибка-то?
Автор: Sk1f
Дата сообщения: 23.08.2006 13:38
ошибку нашел, спасибо Freeman.


Автор: DOE_JOHN
Дата сообщения: 24.08.2006 11:03
Не совсем администрирование. Надо запускать циклом несколько презентаций PowerPoint. Сделал файлы pps, прописал в cmd. Но можно или зациклить один файл, тогда остальные не идут пока из него не выйдешь. Или после показа требует нажать Esc.
Автор: fols
Дата сообщения: 25.08.2006 13:20
Здравствуйте уважаемые.
Почитывая эту ветку, наткнулся на скрипт запускающий под учеткой с правами юзера консоль с правами локального администратора.

set WshShell = CreateObject("WScript.Shell")
WshShell.Run "runas /user:local\admin cmd.exe"
WScript.Sleep 100
WshShell.Sendkeys "password~"

Мне нужно чтобы в этой консоли выполнилась команда на переименование определенного типа файлов, с последующим ее закрытием.
Помогите реализовать ибо не силен в написании скриптов.
Автор: GOODmen
Дата сообщения: 28.08.2006 06:03
Подскажите, как лучше решить такую задачу - нужно выдернуть из АД некоторые группы и их пользователей с последующим сохранением в файл в красивом виде для печати?
Автор: AlexSSS
Дата сообщения: 28.08.2006 07:29
GOODmen
скачиваешь из шапки
TechNet Script Center Sample Scripts --- recomend

смотришь примеры, как все вытаскивается из AD
вытаскиваешь в эксель все, что тебе надо, там же наводишь красоту
Автор: GOODmen
Дата сообщения: 29.08.2006 07:04
мда... в принципе одна строчка
dsquery group -name %1 | dsget group -members | sort
решает проблему, но как избавится от мусора ("CN=...DC=...") в именах?

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Зеркалирование дисков Win2000


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.