Hello Folks
Ik heb een script in Powershell proberen te schrijven, zal even kort uitleggen wat de bedoeling is: Ik haal uit de AD de aanmeldnaam van een persoon(VoornaamNaam), vervolgens controleer ik of het script mag doorlopen worden voor deze persoon(VoornaamNaam1), als het script niet mag doorlopen worden, beëindig ik het script. Vervolgens gaat het script vanzelf verder, heb hier als voorbeeld EXCEL laten opstarten.
Nu is het zo dat als ik dit voor meerdere personen zou moeten laten testen, ik regels moet bijvoegen(hieronder als voorbeeld “VoornaamNaam2”).
Nu is het zo dat ik graag een excell/csv bestand in de map(waar het script staat) zou willen plaatsen waarin de namen van uitzondering staan, dit bestand zou ik op elk moment kunnen wijzigen afhankelijk van de noden, dus het aantal namen zou kunnen wijzigen
Hieronder even een voorbeeld van dit bestand:
Het script zou dus moeten lezen hoeveel personen in het excell(csv) bestand staan, vervolgens via een lus alle namen inlezen en testen of een van de namen erin voorkomt, indien niet zou het dan Excell moeten openen.
Weet iemand hoe ik dit het beste in Powershell aanpak?
Alvast bedankt.
STYLUS3530
Ik heb een script in Powershell proberen te schrijven, zal even kort uitleggen wat de bedoeling is: Ik haal uit de AD de aanmeldnaam van een persoon(VoornaamNaam), vervolgens controleer ik of het script mag doorlopen worden voor deze persoon(VoornaamNaam1), als het script niet mag doorlopen worden, beëindig ik het script. Vervolgens gaat het script vanzelf verder, heb hier als voorbeeld EXCEL laten opstarten.
Nu is het zo dat als ik dit voor meerdere personen zou moeten laten testen, ik regels moet bijvoegen(hieronder als voorbeeld “VoornaamNaam2”).
code:
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
| #Oefen Excel starten vanuit gebruikersnaam #Omgevings variabelen $AppData=(Get-Item env:appdata).value $SigPath = '\Microsoft\Signatures' $LocalSignaturePath = $AppData+$SigPath $RemoteSignaturePathFull = $SigSource #Haal info uit de AD van de actuele gebruiker $UserName = $env:username $Filter = "(&(objectCategory=User)(samAccountName=$UserName))" $Searcher = New-Object System.DirectoryServices.DirectorySearcher $Searcher.Filter = $Filter $ADUserPath = $Searcher.FindOne() $ADUser = $ADUserPath.GetDirectoryEntry() $ADDisplayName = $ADUser.DisplayName $ADEmailAddress = $ADUser.mail $ADTitle = $ADUser.title $ADDescription = $ADUser.description $ADTelePhoneNumber = $ADUser.TelephoneNumber $strFax = $ADUser.facsimileTelephoneNumber $ADMobile = $ADUser.mobile $ADStreetAddress = $ADUser.streetaddress $ADCity = $ADUser.l $ADCustomAttribute1 = $ADUser.extensionAttribute1 $ADModify = $ADUser.whenChanged #Testen of het een bepaalde persoon is die gepersonaliseerde handtekening heeft $value = $UserName #Testen op VoornaamNaam1 if ( $value -like 'VoornaamNaam1') { exit } #Testen op VoornaamNaam2 if ( $value -like 'VoornaamNaam2') { exit } #Open Template $MSExcel = New-Object -comobject Excel.Application $MSExcel.Visible = $True |
Nu is het zo dat ik graag een excell/csv bestand in de map(waar het script staat) zou willen plaatsen waarin de namen van uitzondering staan, dit bestand zou ik op elk moment kunnen wijzigen afhankelijk van de noden, dus het aantal namen zou kunnen wijzigen
Hieronder even een voorbeeld van dit bestand:
Jan |
Piet |
Jef |
Sabrina |
Wendy |
Louis |
Peter |
Het script zou dus moeten lezen hoeveel personen in het excell(csv) bestand staan, vervolgens via een lus alle namen inlezen en testen of een van de namen erin voorkomt, indien niet zou het dan Excell moeten openen.
Weet iemand hoe ik dit het beste in Powershell aanpak?
Alvast bedankt.
STYLUS3530
[ Voor 0% gewijzigd door Janoz op 25-09-2023 15:29 ]