Kotisivu » miten » Kuinka luoda satunnaisia ​​nimiä ja puhelinnumeroita PowerShellin avulla

    Kuinka luoda satunnaisia ​​nimiä ja puhelinnumeroita PowerShellin avulla

    Kun tarvitset tietokokonaisuutta testausta tai esittelyä varten, ja se asettaa edustamaan henkilökohtaisia ​​tietoja (PII), et yleensä halua käyttää todellisia tietoja, jotka edustavat todellisia ihmisiä. Täällä käymme läpi, miten voit käyttää PowerShellia luomaan luettelon satunnaisista nimistä ja puhelinnumeroista juuri tällaiseen tilanteeseen.

    Mitä tarvitset

    Ennen kuin aloitat, sinulla on joitakin työkaluja ja tietoja, joita sinulla pitäisi olla:

    PowerShell

    Tämä skripti kehitettiin PowerShell 4.0: n avulla, ja sitä on myös testattu yhteensopivuuden varmistamiseksi PowerShell 2.0: n kanssa. PowerShell 2.0 tai uudempi on asennettu Windowsiin Windows 7: n jälkeen. Se on saatavana myös Windows XP- ja Vista-käyttöjärjestelmissä osana Windows Management Frameworkiä (WMF). Alla on joitakin lisätietoja ja latausten linkkejä.

    • Windows XP SP3 ja Vista (SP1 tai uudemmat) käyttäjät voivat ladata sopivan WMF-version Microsoftilta KB968929: ssä. Sitä ei tueta XP SP2: ssa tai sen alapuolella, tai Vista ilman SP1: tä.
    • PowerShell 4.0 on mukana Windows 8.1: ssä. Windows 7 SP1 -käyttäjät voivat päivittää sen osana WMF-päivitystä Microsoft Download Centeristä. Se ei ole käytettävissä XP- tai Vista-versiossa.

    nimet

    Tarvitset joitakin nimiä, jotka syötetään satunnaisgeneraattoriin. Loistava lähde a erä nimiä ja tietoja heidän suosioistaan ​​(vaikka sitä ei käytetä tässä käsikirjoituksessa), on Yhdysvaltain väestönlaskennan toimisto. Alla olevista linkeistä saatavilla olevat luettelot ovat hyvin suuria, joten voit halutessasi leikata ne hieman, jos aiot tuottaa paljon nimiä ja numeroita kerralla. Testijärjestelmässämme jokainen nimi / numeropari kesti noin 1,5 sekuntia, jotta voit luoda täydelliset luettelot, mutta mittarilukema vaihtelee omien järjestelmätietojen mukaan.

    • sukunimet
    • Miesten ensimmäiset nimet
    • Naisten ensimmäiset nimet

    Riippumatta siitä, mitä lähteenä käytät, sinun on luotava kolme tekstitiedostoa, joita skripti voi käyttää poolin nimien valintaan. Jokaisessa tiedostossa on oltava vain nimet ja vain yksi nimi riviä kohti. Nämä on tallennettava samaan kansioon kuin PowerShell-skripti.

    Surnames.txt tulisi sisältää sukunimet, joista komentosarja valitsee. Esimerkki:

    Smith Johnson Williams Jones Brown

    Males.txt tulisi sisältää miehen etunimet, jotka haluat skriptin valita. Esimerkki:

    James John Robert Michael William

    Females.txt tulisi sisältää naispuoliset etunimet, joista komentosarja valitsee. Esimerkki:

    Mary Patricia Linda Barbara Elizabeth

    Puhelinnumeroita koskevat säännöt

    Jos haluat olla varma, että puhelinnumerosi eivät vastaa kenenkään todellista puhelinnumeroa, helpoin tapa on käyttää tunnettua ”555” Exchange -koodia. Mutta jos näytätte tietosarjan, jossa on paljon puhelinnumeroita, 555 alkaa näyttää melko yksitoikkoiselta reaaliaikaisesti. Jotta asiat olisivat kiinnostavampia, luomme muita puhelinnumeroita, jotka rikkovat NANP-sääntöjä. Alla on joitakin esimerkkejä virheellisistä puhelinnumeroista, jotka edustavat kutakin tämän komentosarjan tuottamaa numeroryhmää:

    • (157) 836-8167
      Tämä numero ei kelpaa, koska Aluekoodit eivät voi alkaa 1: llä tai 0: lla.
    • (298) 731-6185
      Tämä numero on virheellinen, koska NANP ei määritä aluekoodeja 9: llä toisena numerona.
    • (678) 035-7598
      Tämä numero on virheellinen, koska Exchange-koodit eivät voi alkaa 1: llä tai 0: lla.
    • (752) 811-1375
      Tämä numero on virheellinen, koska Exchange-koodit eivät voi päättyä kahteen 1-kertaan.
    • (265) 555-0128
      Tämä numero on virheellinen, koska Exchange-koodi on 555, ja tilaajan tunnus on fiktiivisille numeroille varattuun alueeseen.
    • (800) 555-0199
      Tämä numero on ainoa 800-numero, jossa on 555 Exchange-koodi, joka on varattu käytettäväksi fiktiivisenä numerona.

    Huomaa, että yllä mainitut säännöt voivat muuttua ja ne voivat vaihdella lainkäyttöalueittain. Sinun pitäisi tehdä oma tutkimus, jotta voisit tarkistaa nykyiset säännöt, joita sovelletaan lokaliin, jolle olet luonut puhelinnumeroita.

    Yhteiset komennot

    On olemassa melko yleisiä komentoja, joita käytetään koko tässä käsikirjoituksessa, joten sinun pitäisi saada perusajatus siitä, mitä nämä tarkoittavat ennen kuin me sukellamme sen todelliseen kirjoittamiseen.

    • Foreach-Object ottaa joukon tai luettelon objekteista ja suorittaa määritetyn toiminnon kullakin niistä. ForEach-Object-skriptilohkossa $ _ muuttujaa käytetään viittaamaan käsiteltävään kohteeseen.
    • tai muuten lausumien avulla voit suorittaa operaation vain, jos tietyt ehdot täyttyvät, ja (valinnaisesti) määrittele, mitä pitäisi tehdä, kun kyseinen ehto ei täyty.
    • vaihtaa lausunnot ovat kuin jos lausunnot sisältävät enemmän valintoja. Kytkin tarkistaa objektin useista olosuhteista ja ajaa mitä tahansa skriptilohkoja määritellyille olosuhteille, joita kohde vastaa. Voit myös halutessasi määrittää oletuslohkon, joka toimii vain, jos muita ehtoja ei ole sovitettu. Vaihtoehtoiset lausumat käyttävät myös $ _ muuttujaa, kun viitataan käsiteltävään kohteeseen.
    • sillä aikaa lauseiden avulla voit toistaa komentosarjoja jatkuvasti niin kauan kuin tietty ehto täyttyy. Kun jotain tapahtuu, mikä aiheuttaa sen, että ehto ei enää ole totta, kun komentosarjalohko on valmis, silmukka poistuu.
    • yritä saada kiinni lausunnot auttavat virheiden käsittelyssä. Jos jokin menee vikaan kokeiluun määritetyn komentosarjan lohkon kanssa, saalislohko toimii.
    • Get-Content tekee mitä sanoo tinaa. Se saa määritetyn objektin sisällön - yleensä tiedoston. Tämän avulla voidaan näyttää tekstitiedoston sisältö konsolissa tai, kuten tässä käsikirjassa, siirtää sisältöä pitkin putkilinjaa käytettäväksi muiden komentojen kanssa.
    • Kirjoita Host laittaa tavaraa konsoliin. Tätä käytetään viestien esittämiseen käyttäjälle, eikä sitä sisällytetä komentosarjan tuotokseen, jos lähtö ohjataan.
    • Write-lähtö todella tuottaa tuotoksen. Normaalisti tämä poistetaan konsoliin, mutta se voidaan ohjata myös muilla komennoilla.

    Käsikirjassa on muitakin komentoja, mutta selitämme niitä, kun menemme.

    Scriptin rakentaminen

    Nyt on aika saada kädet likaisiksi.

    Osa 1: Valmiina käyntiin

    Jos pidät käsikirjoituksesi alkavan kulkea puhtaalta konsolilta, tässä on ensimmäinen siinä oleva rivi.

    Clear-Host

    Nyt kun meillä on puhdas näyttö, seuraava asia, jonka haluamme tehdä, on, että skripti tarkistaa, että kaikki tarvitsemansa se on paikallaan. Tätä varten meidän on aloitettava kertomalla sitä, mistä etsiä ja mitä etsiä.

    $ ScriptFolder = Split-Path $ MyInvocation.MyCommand.Definition -Parent $ RequiredFiles = ('Males.txt', 'Females.txt', 'Sukunimet.txt')

    Ensimmäinen rivi on erittäin hyödyllinen missä tahansa käsikirjoituksessa. Se määrittää muuttujan, joka osoittaa skriptiä sisältävään kansioon. Tämä on välttämätöntä, jos skripti tarvitsee muita tiedostoja, jotka sijaitsevat samassa hakemistossa kuin itse (tai tunnetun suhteellisen polun kyseisestä hakemistosta), koska muuten kohtaat virheitä, jos yrität suorittaa komentosarjan, kun olet toisessa työhakemisto.

    Toisessa rivissä luodaan joukko tiedostojen nimiä, jotka tarvitaan skriptin suorittamiseen oikein. Käytämme tätä yhdessä $ ScriptFolder-muuttujan kanssa seuraavassa kappaleessa, jossa tarkistamme, että tiedostot ovat läsnä.

    $ RequiredFiles | ForEach-Object if (! (Test-polku "$ ScriptFolder $ _")) Write-Host "$ _ ei löydy." -ForegroundColor Punainen $ MissingFiles ++

    Tämä skripti lähettää $ RequiredFiles -ryhmän ForEach-Object-lohkoon. Tämän skriptilohkon sisällä, jos lauseke käyttää Test-polkua, tarkistaa, onko etsimäsi tiedosto se, mihin se kuuluu. Testi-polku on yksinkertainen komento, joka, kun sille annetaan polku, palauttaa oikean tai väärän vastauksen kertomaan meille, jos polku osoittaa jotain, joka on olemassa. Huutomerkki siellä on a ei operaattori, joka kääntää testiradan vastauksen, ennen kuin se välitetään jos lausuntoon. Joten jos Test-Path palaa vääriä (eli etsimääsi tiedostoa ei ole olemassa), se muunnetaan totta niin, että jos lauseke suorittaa sen komentosarjan lohkon.

    Toinen asia, jota tässä huomataan, jota käytetään usein tässä käsikirjoituksessa, on kaksoissarjoiden käyttö yhden lainausmerkkien sijaan. Kun laitat jotain yhden lainausmerkkeihin, PowerShell käsittelee sitä staattisena merkkijonona. Mikä on yksittäisissä lainauksissa, se kulkee täsmälleen samalla tavalla kuin on. Double-quotes kertoo PowerShellille kääntämään muuttujat ja muut erikoiskohdat merkkijonossa ennen sen kulkua. Tässä kaksinkertaiset lainausmerkit tarkoittavat sen sijaan, että juoksevat Testin polku $ $ ScriptFolder  me todella teemme jotain enemmän Testi-polku C: Skriptit Sukunimet.txt ' (olettaen, että komentosarja on C: Skriptit ja ForEach-Object työskentelee parhaillaan nimellä 'Sukunimet.txt').

    Jokaista tiedostoa, jota ei löydy, kirjoita-isäntä lähettää virhesanoman punaiseksi kertoa teille, mikä tiedosto puuttuu. Sitten se lisää $ MissingFiles-muuttujaa, jota käytetään seuraavassa kappaleessa, virheiden poistamiseksi ja lopettamiseksi, jos tiedostoja puuttuu.

    jos ($ MissingFiles) Kirjoita-isäntä "$ MissingFiles-lähdetiedostoa ei löydy. -ForegroundColor Punainen Poista muuttuja ScriptFolder, pakolliset tiedostot, MissingFiles Exit

    Tässä on toinen siisti temppu, jonka voit tehdä jos lausuntoja. Useimmat oppaat näkevät, jos lausunnot kertovat, että käytät operaattoria tarkistamaan sopivan kunnon. Esimerkiksi täällä voisimme käyttää jos ($ MissingFiles -gt 0) nähdä, onko $ MissingFiles suurempi kuin nolla. Jos kuitenkin käytät jo komentoja, jotka palauttavat boolean arvon (kuten edellisessä lohkossa, jossa käytimme Test-polkua), se ei ole tarpeen. Voit myös tehdä sen ilman tällaisia ​​tapauksia, kun olet juuri testaamassa, onko numero nolla. Mikä tahansa ei-nolla-numero (positiivinen tai negatiivinen) käsitellään totta, kun taas nolla (tai, kuten täällä, ei-olemassa oleva muuttuja) käsitellään vääränä.

    Jos $ MissingFiles on olemassa ja se ei ole nolla, kirjoita-isäntä lähettää viestin, jossa kerrotaan, kuinka monta tiedostoa puuttuu ja että komentosarja keskeytyy. Tällöin Poista-muuttuja puhdistaa kaikki luodut muuttujat ja Poistu lopettaa komentosarjan. Normaalissa PowerShell-konsolissa Poista-muuttujaa ei tarvita oikeastaan ​​tähän erityistarkoitukseen, koska skriptien asettamat muuttujat hylätään yleensä, kun komentosarja poistuu. PowerShell ISE käyttäytyy kuitenkin hieman eri tavalla, joten saatat haluta säilyttää tämän, jos aiot käyttää skriptiä sieltä.

    Jos kaikki asiat ovat kunnossa, skripti jatkuu. Vielä yksi valmistelu on alias, että olemme todella iloisia myöhemmin.

    Uusi-Alias ​​g Get-Random

    Nimimerkkejä käytetään vaihtoehtoisten nimien luomiseen komennoille. Nämä voivat olla hyödyllisiä, jotta voimme tutustua uuteen käyttöliittymään (esim. PowerShellilla on sisäänrakennettu aliaksia dir -> Get-ChildItem ja kissa -> Get-Content) tai tehdä lyhyitä viitteitä yleisesti käytetyistä komennoista. Täällä me teemme erittäin lyhyt käsi Get-Random komentoa, jota käytetään paljon myöhemmin.

    Get-Random tekee melko paljon sen nimestä. Koska taulukko (kuten nimiluettelo) on syötetty, se poimii satunnaisen kohteen joukosta ja sulkee sen ulos. Sitä voidaan käyttää myös satunnaislukujen muodostamiseen. On muistettava Get-Randomista ja numeroista, että monien muiden tietokoneiden tavoin se alkaa laskea nollasta. Joten sen sijaan Get-Random 10 mikä tarkoittaa sitä, että mitä luonnollisempi "anna minulle numero 1: stä 10: een", se todella tarkoittaa "anna minulle numero välillä 0 - 9." Voit olla tarkempi numerovalinnasta, jotta Get-Random käyttäytyy enemmän kuin luonnollisesti odottaa, mutta emme tarvitse tätä tässä komentosarjassa.

    Osa 2: Käyttäjätietojen saaminen ja töihin siirtyminen

    Vaikka vain yksi sattumanvarainen nimi ja puhelinnumero muodostava komentosarja on hieno, on paljon parempi, jos komentosarja sallii käyttäjän määrittää, kuinka monta nimeä ja numeroa he haluavat saada yhdessä erässä. Valitettavasti emme voi luottaa käyttäjiin aina antamaan kelvollista syötettä. Joten, täällä on vähän enemmän kuin vain $ UserInput = Read-Host.

    kun (! $ ValidInput) try [int] $ UserInput = Read-Host -Prompt 'Tuotettavat kohteet' $ ValidInput = $ true catch Kirjoita-isäntä "Virheellinen tulo. Anna vain numero. ' -ForegroundColor Red

    Yllä oleva lauseke tarkistaa $ ValidInputin arvon ja kieltää sen. Niin kauan kuin $ ValidInput on väärä tai sitä ei ole olemassa, se pitää silmukan läpi komentosarjan.

    Kokeilutiedote ottaa käyttäjän syötteen Read-Hostin kautta ja yrittää muuntaa sen kokonaislukuarvoksi. (Se on [Int] Jos se onnistuu, se asettaa $ ValidInput -asetuksen totta niin, että silmukka voi poistua. Jos tämä ei onnistu, saalislohko lähettää virheen ja koska $ ValidInput ei ole asetettu, taas silmukka palaa takaisin ja kehottaa käyttäjää uudelleen.

    Kun käyttäjä on antanut numeron oikein syötteenä, haluamme, että komentosarja ilmoittaa, että se on aloittamassa todellisen työnsä ja sitten pääsemään tekemään sen..

    Kirjoita-isäntä "'nGenerating $ UserInput nimiä ja puhelinnumeroita. Ole kärsivällinen.'n" 1… $ UserInput | ForEach-Object 

    Älä huoli, emme aio jättää sinut yksin selvittämään sattumanvaraisen nimen ja numeron generaattorikoodia. Se on vain paikanvaraajan kommentti, jossa näytetään, missä seuraava osa (jossa todellinen työ tehdään) sopii.

    Write-Host-rivi on melko yksinkertainen. Se vain kertoo, kuinka monta nimeä ja puhelinnumeroa skripti aikoo tuottaa, ja pyytää käyttäjää olemaan kärsivällinen, kun komentosarja toimii.'n merkkijonon alussa ja lopussa on lisätä tyhjä rivi ennen ja jälkeen tuotoksen, jotta se antaa jonkinlaisen visuaalisen eron syöttörivin ja nimien ja numeroiden luettelon välillä. Huomaa, että se on back-tick (AKA “haudan aksentti” - yleensä avain yläpuolella, vasemmalla puolella 1) eikä apostrofi tai yhden lainaus jokaisen edessä n.

    Seuraava osa näyttää eri tavalla, jolla voit käyttää ForEach-Object-silmukkaa. Tyypillisesti, kun haluat, että komentosarjalohko ajaa tietyn määrän kertoja, määrität säännöllisen silmukan kaltaisen ($ x = 1; $ x -le $ UserInput; $ x ++) . ForEach-Objectin avulla voimme yksinkertaistaa tätä syöttämällä sille kokonaislukujen luettelon ja sen sijaan, että kerrotaan, että se todella tekee mitään näiden kokonaislukujen kanssa, annamme sille vain staattisen skriptilohkon, joka kulkee, kunnes kokonaisluvut loppuvat..

    Osa 3: Satunnaisen nimen luominen

    Nimen luominen on tämän prosessin yksinkertaisin bitti. Se koostuu vain kolmesta vaiheesta: Sukunimen valitseminen, sukupuolen poiminta ja etunimen valitseminen. Muista, että alias, jonka teimme Get-Randomille jonkin aikaa takaisin? Aika alkaa käyttää sitä.

        $ Sukunimi = Sisältö "$ ScriptFolder" Sukunimet.txt " g $ Male = g 2 jos ($ Male) $ FirstName = Hanki sisältö "$ ScriptFolder \ t g else $ FirstName = Hanki sisältö "$ ScriptFolder \ t g

    Ensimmäinen rivi ottaa listan sukunimistä, syöttää sen satunnaisvalitsijaan ja määrittää valitun nimen $ Surname.

    Toinen rivi poimii ihmisen sukupuolen. Muista, miten Get-Random alkaa laskea nollasta ja kuinka nolla on väärä ja kaikki muu on totta? Näin käytämme Get-Random 2 (tai paljon lyhyempi g 2 aliaksemme ansiosta - molemmat johtavat nollan tai yhden väliseen valintaan - päättää, onko henkilö miehenä vai ei. Jos / other-lause myöhemmin valitsee satunnaisesti miehen tai naisen etunimen.

    Osa 4: Satunnaisen puhelinnumeron luominen

    Tässä on todella hauska osa. Aiemmin esitimme sinulle, miten voit tehdä useita virheellisiä tai kuvitteellisia puhelinnumeroita. Koska emme halua, että kaikki numerot näyttävät liian samankaltaisilta, valitsemme satunnaisesti virheellisen numeromuodon joka kerta. Satunnaisesti valitut muodot määritellään niiden aluekoodi ja Exchange-koodi, jotka tallennetaan yhdessä $ Prefixiksi.

        $ NumberFormat = g 5-kytkin ($ NumberFormat) 0 $ Prefix = "($ (g 2) $ (g 10) $ (g 10)) $ (g 10) $ (g 10) $ (g 10)"  1 $ Prefix = "($ (g 10) 9 $ (g 10)) $ (g 10) $ (g 10) $ (g 10)" 2 $ Prefix = "($ (g 10) $ (g 10) $ (g 10)) $ (g 2) $ (g 10) $ (g 10) " 3 $ Prefix =" ($ (g 10) $ (g 10) $ (g 10)) $ (g 10) 11 " 4 $ Prefix =" ($ (g 10) $ (g 10) $ (g 10)) 555 "

    Ensimmäinen rivi on suoraviivainen satunnaisluku, jonka avulla voit valita, mihin muotoon aiot seurata puhelinnumeroa. Sitten kytkinlausunto ottaa kyseisen satunnaisen valinnan ja generoi $ Prefixin vastaavasti. Muista, että luettelo virheellisistä puhelinnumeroista? $ NumberFormat -arvot 0-3 vastaavat luettelon ensimmäisiä neljää. Arvo 4 voi tuottaa yhden kahdesta viimeisestä, koska molemmat käyttävät “555” Exchange-koodia.

    Täällä voit myös nähdä, että käytämme toista temppua kaksoissarjoilla. Double-lainausmerkit eivät anna sinun tulkita muuttujia ennen kuin merkkijono saa tulostuksen - ne myös käsittelevät komentosarjoja. Voit tehdä tämän seuraavasti: ”$ ()”. Joten mitä sinulla on edellä on paljon yksilöllisesti satunnaistettuja numeroita, joista osa on joko rajoitettu niiden alueelle tai asetettu staattisesti sääntöjen mukaan, joita meidän on noudatettava. Jokaisella merkkijonolla on myös suluissa ja välissä, kuten normaalisti odotetaan näkevän Area Code- ja Exchange Code -parissa.

    Viimeinen asia, joka meidän on tehtävä ennen kuin olemme valmiita antamaan nimemme ja puhelinnumeromme, on luoda tilaajan tunnus, joka tallennetaan $ Suffixiksi.

        kytkin ($ NumberFormat) $ _ -lt 4 $ Suffix = "$ (g 10) $ (g 10) $ (g 10) $ (g 10)" 4 kytkin ($ Prefix) '( 800) 555 '$ Suffix =' 0199 ' oletus $ Suffix = "01 $ (g 10) $ (g 10)"

    555-numeroiden erityissääntöjen takia emme voi vain tuottaa neljää satunnaislukua jokaisen puhelinnumeron loppuun, jota skripti tekee. Joten ensimmäinen kytkin tarkistaa, onko kyseessä 555-numero. Jos ei, se tuottaa neljä satunnaislukua. Jos se on 555-numero, toinen kytkin tarkistaa 800-aluekoodin. Jos tämä vastaa, on olemassa vain yksi voimassa oleva $ Suffix, jota voimme käyttää. Muuten on mahdollista valita mitä tahansa välillä 0100-0199.

    Huomaa, että on olemassa muutamia eri tapoja, joilla tämä lohko olisi voitu kirjoittaa sen sijaan, miten se on. Molemmat kytkinlausunnot olisi voitu korvata jos / other-lauseilla, koska ne molemmat käsittelevät vain kahta valintaa. Sen sijaan, että nimenomaan kutsuttiin "4": tä ensimmäisen vaihtoehdon vaihtoehdoksi, oletusarvoa olisi voitu käyttää samanlaisella tavalla kuin se tehtiin toisessa, koska se oli ainoa jäljellä oleva vaihtoehto. Valinta välillä jos / muuta vs. kytkin tai jos haluat käyttää oletusohjelmaa tiettyjen arvojen sijasta, tulee usein henkilökohtaiseen mieltymykseen. Käytä niin kauan kuin se toimii.

    Nyt on aika tuottaa.

        Kirjoita tuloste "$ FirstName $ Sukunimi $ Prefix- $ Suffix"

    Tämä on melko yhtä yksinkertaista kuin se tulee käsikirjoitukseen. Se lähettää vain etu- ja sukunimen välilyönneillä, sitten toisen tilan ennen puhelinnumeroa. Tässä myös lisätään Exchange-koodin ja tilaajan tunnuksen välinen vakiomerkki.

    Tämä sulkeutuva alareuna on ForEach-Object-silmukan loppu aikaisemmasta - jätä tämä pois, jos olet jo saanut sen.

    Osa 5: Komentosarjan puhdistus ja käyttö

    Kun kaikki työ on tehty, hyvä käsikirjoitus tietää, miten puhdistaa itsensä. Jälleen alla oleva muuttujan poisto ei ole oikeastaan ​​tarpeen, jos aiot suorittaa vain komentosarjan konsolista, mutta haluat sen, jos aiot käyttää sitä ISE: ssä.

    Poista-kohde-alias: g Poista-muuttujan skripti-kansio, pakolliset tiedostot, sukunimi, uros, etunimi, numeroFormat, etuliite, sufiksi, validInput, käyttäjänimike

    Kun olet saanut kaiken valmiiksi, tallenna komentosarja, jossa on .ps1-laajennus samassa kansiossa kuin nimitiedostosi. Varmista, että ExecutionPolicy on asetettu niin, että komentosarja voi ajaa ja antaa sille pyörreä.

    Tässä on kuvakaappaus toiminnasta:

    Voit myös ladata ZIP-tiedoston, joka sisältää tämän PowerShell-komentosarjan, ja tekstitiedostot, jotka sisältävät nimiluetteloita, alla olevasta linkistä.

    Satunnainen nimi ja puhelinnumero generaattori PowerShellille