$søgevariabel er et user input? Altså en søgning i en database eller hvordan?
Kan du prøve at illustrerer præcist hvad du skal bruge og hvordan det "skulle" fungerer
--
Jeg har lige testet af, det du har skrevet bør virke.
Men hvis det ikke virker som du ønsker kan du måske prøve at forklare hvad du gerne vil opnå.
Kode jeg testede med
$searchValue = Read-host "Skriv søgning her"
Get-ADUser -Filter * -Properties * | Where { $_.samaccountname -like "*$searchValue*"}
--
Du bør bruge ISE og checkpoints for at debugge.
Du bør også bruge "-filter" , og ikke en pipe, for bedre performance.
Hvis du i ISE eller ved at lave en "write-host" kan validere at $søgevariabel indeholder en værdi du forventer, er det nok noget med "' eller lign. i where clausen.
--
#1 Ja det er et user input, men det bliver jo behandlet som en variabel alligevel.
jeg skal søge efter mac-adresser i et scopeID for at se hvad ip et specifikt device har fået.
og fordi søge tingen ser sådan her ud -like *VARIABEL* er så jeg bare kan skrive de sidste 2 tegn i mac-adressen og ikke behøver at skrive det hele.
--
Prøv evt. at vis os din nuværende kode som du ikke kan få til at virke.
Fordi hvis det er en MAC adresse du leder efter, så tænker jeg ikke det er "Get-ADUser" du bruger :)
--
$cred = Get-Credential
$søge = Read-Host "søgetekst her"
Invoke-Command -ComputerName "test" -Credential $cred {
get-dhcpserverv4lease -ScopeId 10.1.8.0 | Where { $_.ClientId -like "*$søge*"} | select clientid
}
her er det egentlige kode jeg arbejder med, min fejl at ikke bare sende det med, med det samme.
Jeg tror det fordi den $søge variabel er dannet lokalt og ikke kommer med i invoke-command.
--
$cred = Get-Credential
$søge = Read-Host "søgetekst her"
Invoke-Command -ComputerName "test" -Credential $cred {
get-dhcpserverv4lease -ScopeId 10.1.8.0 | Where { $_.ClientId -like "*$Using:søge*"} | select clientid
}
jeg fandt løsningen.
Tak til jer for sparket i den rigtige vej
--
#0 først ville jeg altid bruge -eq, - AD er en bitch når man ikke er særlig konkret, dernæst meget relevant hvilket PS niveau din søgning kommer fra? Du skal op på min PS5.0 for at benytte en String værdi med -Filter
Check det evt. med Get-Host | select Version
Hvis du over 5 burde du kunne anvende følgende:
$UserName = Read-Host "skriv søgning her"
Get-ADUser -Filter "SamAccountName -like '*$UserName*'"
Dernæst brug aldrig
Æ,Ø,Å i dine variabler :)
#4 han søger ikke efter MAC-Adressen men SamAccountName altså brugernavn i Active Directory
#7 fino du fandt en løsning, dog intet med dit forespurgte output gøre samt det remote eksekvering vær obs på rettigheder
--
øhh ? just love sweet lemon juice :)
--
Sidst redigeret 14-11-2022 14:12