…
6 3 ms 3 ms 3 ms 188.134.126.237
7 3 ms 3 ms 3 ms 217.150.40.58
8 31 ms 31 ms 32 ms 217.150.62.237
9 31 ms 33 ms 30 ms 193.232.249.67
10 36 ms 36 ms 36 ms 193.232.249.97
11 36 ms 36 ms 37 ms 93.84.125.161
12 * * *
13 33 ms 31 ms 30 ms 93.125.30.35
учти что они могут быть перевернуты кверху ногами ещё, так что сначала надо какую-то грань выстраивать… и не все кусочки одинаковой длинны… ну или равнять для начала чтобы все линии быи параллельны…
я для начала перевел изображение в оттенки серого, тем самым сгладил дефекты сканирования, начинаю думать как лучше это всё вертеть… Полоски с ровными краями — скорее всего верх/низ/бока… по графам определяем что это, верх или низ… ну а дальше пошли плясать…
Хм… а если пользователи разделены следующим образом?
OU Marketing — vasya (kab1) printer 001
— petya (kab2) printer 002
OU Reklama — lena (kab1) printer 001
— katya (kab8) printer 008
тут нам подойдет разбиение по группам и следующий VBS…
Dim oNet
'On Error Resume Next
Set oNet = CreateObject("WScript.Network")
If IsMember("Printer1") then
oNet.AddWindowsPrinterConnection "\\comp1\Printer1"
End If
If IsMember("Printer2") then
oNet.AddWindowsPrinterConnection "\\comp2\Printer2"
End If
If IsMember("Printer3") then
oNet.AddWindowsPrinterConnection "\\" & sPrintServer & "\Printer3"
oNet.SetDefaultPrinter "\\" & sPrintServer & "\Printer3"
End If
' FUNCTION ============ IsMEmber
Function IsMember(sGroup)
' IsMember
' Test to see if user if member of specified group
' sGroup Name of group
' Returns True if user is group member
Dim sAdsPath, oUser, oGroup
' ================= Populate dictionary if not yet created =======================
If IsEmpty(g_oGroupDict) Then
Set g_oGroupDict = CreateObject("Scripting.Dictionary")
g_oGroupDict.CompareMode = vbTextCompare
sAdsPath = oNet.UserDomain & "/" & oNet.UserName
On Error Resume Next
Set oUser = GetObject("WinNT://" & sAdsPath & ",user")
If Err.Number then
IsMember = FALSE
Exit Function
End IF
On Error Goto 0
For Each oGroup In oUser.Groups
g_oGroupDict.Add oGroup.Name, "-"
Next
Set oUser = Nothing
End If
IsMember = CBool(g_oGroupDict.Exists(sGroup))
End Function
…
6 3 ms 3 ms 3 ms 188.134.126.237
7 3 ms 3 ms 3 ms 217.150.40.58
8 31 ms 31 ms 32 ms 217.150.62.237
9 31 ms 33 ms 30 ms 193.232.249.67
10 36 ms 36 ms 36 ms 193.232.249.97
11 36 ms 36 ms 37 ms 93.84.125.161
12 * * *
13 33 ms 31 ms 30 ms 93.125.30.35
+5 PROFIT!
bash.org/index.bak
«NoFileSharingControl»=dword:00000001
OU Marketing — vasya (kab1) printer 001
— petya (kab2) printer 002
OU Reklama — lena (kab1) printer 001
— katya (kab8) printer 008
тут нам подойдет разбиение по группам и следующий VBS…
Dim oNet
'On Error Resume Next
Set oNet = CreateObject("WScript.Network")
If IsMember("Printer1") then
oNet.AddWindowsPrinterConnection "\\comp1\Printer1"
End If
If IsMember("Printer2") then
oNet.AddWindowsPrinterConnection "\\comp2\Printer2"
End If
If IsMember("Printer3") then
oNet.AddWindowsPrinterConnection "\\" & sPrintServer & "\Printer3"
oNet.SetDefaultPrinter "\\" & sPrintServer & "\Printer3"
End If
' FUNCTION ============ IsMEmber
Function IsMember(sGroup)
' IsMember
' Test to see if user if member of specified group
' sGroup Name of group
' Returns True if user is group member
Dim sAdsPath, oUser, oGroup
' ================= Populate dictionary if not yet created =======================
If IsEmpty(g_oGroupDict) Then
Set g_oGroupDict = CreateObject("Scripting.Dictionary")
g_oGroupDict.CompareMode = vbTextCompare
sAdsPath = oNet.UserDomain & "/" & oNet.UserName
On Error Resume Next
Set oUser = GetObject("WinNT://" & sAdsPath & ",user")
If Err.Number then
IsMember = FALSE
Exit Function
End IF
On Error Goto 0
For Each oGroup In oUser.Groups
g_oGroupDict.Add oGroup.Name, "-"
Next
Set oUser = Nothing
End If
IsMember = CBool(g_oGroupDict.Exists(sGroup))
End Function
cscript %windir%/system32/prnmngr.vbs -t -p "\\newcomp\prn-001"
Cписок пользователей / компьютеров:
PS> Get-QADUser | Get-Member
PS> Get-QADComputer
Cписок пользователей, которые не регистрировались 3 месяца и сохраним вывод в HTML-файл:
PS> $last3months = (Get-Date).AddMonths(-3)
PS> Get-QADUser -IncludedProperties LastLogon | where { $_.lastLogon -le $last3months} | Select DisplayName, LastLogon, AccountIsDisabled | ?{-not $_.AccountIsDisabled} | ConvertTo-Html | Out-File E:\report.html
Создадим новую доменную учетную запись:
PS> New-QADUser -name 'user' -ParentContainer 'OU=test,DC=iamroot,DC=local' -UserPassword 'P@ssword'
Будут вопросы — спрашивайте. Спасибо за Внимание