Kā izveidot izlases vārdus un tālruņu numurus ar PowerShell

Satura rādītājs:

Kā izveidot izlases vārdus un tālruņu numurus ar PowerShell
Kā izveidot izlases vārdus un tālruņu numurus ar PowerShell

Video: Kā izveidot izlases vārdus un tālruņu numurus ar PowerShell

Video: Kā izveidot izlases vārdus un tālruņu numurus ar PowerShell
Video: 7 Best Hidden Features in Gmail! 2024, Aprīlis
Anonim
Ja jums ir nepieciešams datu kopums testēšanai vai demonstrēšanai, un šim komplektam ir jāatspoguļ personu identificējoša informācija (PII), jūs parasti nevēlaties izmantot reālos datus, kas ir reāli cilvēki. Šeit mēs jums pavirzīsim, kā jūs varat izmantot PowerShell, lai tik tiktu izveidots izlases vārdu un tālruņu numuru saraksts.
Ja jums ir nepieciešams datu kopums testēšanai vai demonstrēšanai, un šim komplektam ir jāatspoguļ personu identificējoša informācija (PII), jūs parasti nevēlaties izmantot reālos datus, kas ir reāli cilvēki. Šeit mēs jums pavirzīsim, kā jūs varat izmantot PowerShell, lai tik tiktu izveidots izlases vārdu un tālruņu numuru saraksts.

Ko tev vajag

Pirms sākat darbu, jums ir daži rīki un informācija:

PowerShell

Šis skripts tika izstrādāts, izmantojot PowerShell 4.0, un ir pārbaudīts arī par saderību ar PowerShell 2.0. PowerShell 2.0 vai jaunāka versija ir iebūvēta Windows operētājsistēmā Windows 7. Tā ir pieejama arī operētājsistēmai Windows XP un Vista kā daļu no Windows Management Framework (WMF). Tālāk ir sniegta papildu informācija un saites lejupielādei.

  • PowerShell 2.0 ir aprīkots ar Windows 7. Windows XP SP3 un Vista (SP1 vai jaunāku versiju) lietotāji var lejupielādēt atbilstošu WMF versiju no Microsoft programmā KB968929. Tas netiek atbalstīts XP SP2 vai zemāk, vai Vista bez SP1.
  • PowerShell 4.0 nāk ar Windows 8.1. Windows 7 SP1 lietotāji var to atjaunināt kā daļu no WMF atjauninājuma no Microsoft lejupielādes centra. Tas nav pieejams XP vai Vista.

Vārdi

Jums būs vajadzīgi daži vārdu saraksti, lai tos varētu ievadīt nejaušajā ģeneratorā. Lielisks avots a partija nosaukumu un informāciju par viņu popularitāti (lai gan tas netiks izmantots šim skriptam) ir Amerikas Savienoto Valstu skaitīšanas birojs. Saraksti, kas pieejami zemāk esošajām saitēm, ir ļoti lieli, tādēļ, iespējams, vēlēsities mazliet samazināt tos, ja jūs plānojat vienlaikus radīt daudz vārdus un numurus. Mūsu pārbaudes sistēmā katram vārdu / numuru pairam vajadzēja apmēram 1,5 sekundes, lai ģenerētu, izmantojot pilnu sarakstu, bet jūsu nobraukums mainīsies atkarībā no jūsu sistēmas specs.

  • Uzvārdi
  • Vīriešu vārdi
  • Sieviešu vārdi

Neatkarīgi no izmantotā avota jums būs jāveido trīs teksta faili, kurus skripts var izmantot kā pudeles nosaukuma atlasei. Katrs fails satur tikai vārdus un tikai vienu nosaukumu katrā rindā. Tie ir jāuzglabā tajā pašā mapē kā PowerShell skripts.

Uzvārdi.txt būtu jānorāda uzvārdi, kurus skripts vēlaties atlasīt. Piemērs:

Smith Johnson Williams Jones Brown

Males.txt jāiekļauj vīriešu vārdi, kurus skriptu vēlaties atlasīt. Piemērs:

James John Robert Michael William

Females.txt jāiekļauj sieviešu vārdi, kurus skripts vēlaties izvēlēties. Piemērs:

Mary Patricia Linda Barbara Elizabeth

Noteikumi par tālruņu numuriem

Ja vēlaties pārliecināties, vai jūsu tālruņa numuri neatbilst nevienam reālam tālruņa numuram, vienkāršākais veids ir izmantot labi zināmo "555" apmaiņas kodu. Bet, ja jūs gatavojaties rādīt datu kopumu ar daudz tālruņu numuriem, ka 555 sāks izskatīties diezgan vienmuļa reālā ātri. Lai padarītu lietas vēl interesantākas, mēs ģenerēsim citus tālruņu numurus, kas pārkāpj Ziemeļamerikas numerācijas plāna (NANP) noteikumus. Tālāk ir sniegti daži nederīgu tālruņa numuru paraugi, kas attēlo katru numura kategoriju, ko ģenerēs šis skripts:

  • (157) 836-8167 Šis numurs nav derīgs, jo apgabala kodi nevar sākt ar 1 vai 0.
  • (298) 731-6185 Šis skaitlis nav derīgs, jo NANP nav piešķirts apgabala kodi ar 9 kā otro ciparu.
  • (678) 035-7598 Šis numurs nav derīgs, jo Exchange kodi nevar sākt ar 1 vai 0.
  • (752) 811-1375 Šis numurs nav derīgs, jo Exchange kodi nevar beigties ar diviem 1s.
  • (265) 555-0128 Šis numurs ir nederīgs, jo Exchange kods ir 555, un Abonenta ID atrodas fiktīvu numuru rezervē.
  • (800) 555-0199 Šis numurs ir vienīgais 800 numurs ar 555 apmaiņas kodu, kas ir rezervēts izmantošanai kā fiktīvam skaitlim.

Ņemiet vērā, ka iepriekš minētie noteikumi var tikt mainīti un var atšķirties atkarībā no jurisdikcijas. Jums vajadzētu veikt savu pētījumu, lai pārbaudītu pašreizējos noteikumus, kas attiecas uz vietējo valodu, par kuru jūs izveidosit tālruņu numurus.

Kopīgi komandas

Pastāv dažas diezgan kopējas komandas, kuras tiks izmantotas visā šajā skriptā, tāpēc jums vajadzētu iegūt pamatinformāciju par to, ko tas nozīmē, pirms mēs iegrimt, faktiski rakstot to.

  • Katram objektam ņem objektus masīvā vai sarakstā un veic katrai no tām norādīto darbību. Objekta skripta blokā ForEach-Object mainīgais $ _ tiek izmantots, lai apzīmētu pašreizējo apstrādāto vienumu.
  • ja … vēl paziņojumi ļauj veikt darbību tikai tad, ja ir izpildīti noteikti nosacījumi, un (pēc izvēles) norāda, kas jādara, ja šis nosacījums nav izpildīts.
  • slēdzis apgalvojumi ir tādi kā izteikumi ar lielākām izvēlēm. Slēdzis pārbaudīs objektu pret vairākiem nosacījumiem un palaist visus scenāriju blokus, kas paredzēti objekta atbilstībai. Pēc izvēles varat arī norādīt noklusējuma bloku, kas darbosies tikai tad, ja nav citu nosacījumu. Pārslēgt pārrakstus arī izmanto $ _ mainīgo, lai apzīmētu pašreizējo apstrādāto vienumu.
  • kamēr paziņojumi ļauj jums pastāvīgi atkārtot skriptu bloku, kamēr tiek izpildīts konkrēts nosacījums. Kad notiek kaut kas, kas izraisa nosacījumu vairs nav taisnība, kad skripta bloks ir pabeigts, cilpa iziet.
  • mēģiniet … nozvejas paziņojumi palīdz ar kļūdu apstrādi. Ja kāds notiks, mēģinot izmēģināt noteiktu skripta bloku, darbosies nozvejas bloks.
  • Get-Content vai tas, ko tā saka par alvu.Tas izpaužas noteiktā objekta saturā - parasti failā. To var izmantot, lai parādītu teksta faila saturu konsolē vai, kā tas ir šajā skriptā, cauri cauruļvada saturam nododam, lai to izmantotu kopā ar citām komandām.
  • Write-Host ievieto stuff konsolē. To izmanto, lai lietotājam iesniegtu ziņojumus, un tas netiek iekļauts skripta izvadē, ja produkts tiek novirzīts.
  • Rakstīšanas izeja faktiski ģenerē produkciju. Parasti tas tiek izmests konsolei, bet to var arī novirzīt citām komandām.

Skriptā ir citas komandas, taču mēs izskaidrosim tos kā mēs.

Skripta veidošana

Tagad ir pienācis laiks kļūt netīri.

1.daļa: Gatavība doties uz priekšu

Ja jums patīk jūsu skripts, lai sāktu darboties no tīras konsoles, šeit ir pirmā rinda, kuru vēlaties tajā.

Clear-Host

Tagad, kad mums ir tīrs ekrāns, nākamā lieta, ko mēs vēlamies darīt, ir skripta pārbaude, lai pārliecinātos, ka viss, kas nepieciešams, ir izveidots. Lai to izdarītu, mums vispirms ir jāpaskaidro, kur to meklēt un ko meklēt.

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

Pirmā rindiņa ir ļoti noderīga jebkuram skriptam. Tas definē mainīgo, kas norāda uz mapi, kurā ir skripts. Tas ir svarīgi, ja jūsu skriptam ir nepieciešami citi faili, kas atrodas tajā pašā direktorijā kā pats (vai zināms relatīvais ceļš no šī direktorija), jo citādi rodas kļūdas, ja un kad mēģināt palaist skriptu, kamēr esat citā darba katalogs.

Otrā rindiņa rada failu nosaukumu masīvu, kas nepieciešams, lai skripts darbotos pareizi. Mēs izmantosim to kopā ar $ ScriptFolder mainīgo nākamajā gabalā, kurā pārbaudīsim, vai šie faili ir klāt.

$RequiredFiles | ForEach-Object { if (!(Test-Path '$ScriptFolder$_')) { Write-Host '$_ not found.' -ForegroundColor Red $MissingFiles++ } }

Šī skripta rinda nosūta $ RequiredFiles masīvu blokā ForEach-Object. Šajā skripta blokā, ja formulējums izmanto Test-Path, lai noskaidrotu, vai fails, ko mēs meklējam, ir tas, kur tā pieder. Test-Path ir vienkārša komanda, kas, ievadot faila ceļu, atgriež pamata patiesu vai nepatiesu atbildi, lai pastāstītu mums, vai ceļš norāda uz kaut ko tādu, kas pastāv. Izsaukuma punkts tajā ir operatoru, kas pārveido Test-Path atbildi pirms tā nodošanas uz if paziņojumu. Tātad, ja Test-Path atgriež false (tas ir, fails, ko mēs meklējam, nepastāv), tas tiks konvertēts uz true, lai if-statement izpildītu savu skripta bloku.

Vēl viena lieta, kas jāņem vērā šeit, kas bieži tiks izmantota šajā skriptā, ir divkāršu kotējumu izmantošana, nevis vienas kotācijas. Kad jūs kaut ko ievietojat ar vienu kotāciju, PowerShell to uzskata par statisku virkni. Neatkarīgi no vienas kotācijas tiks nodotas tieši tā, kā ir. Divkāršas kotācijas parāda PowerShell, lai tulkotu mainīgos lielumus un dažus citus īpašus elementus virknē, pirms tā tiek izlaista. Šeit divkāršas pēdiņas nozīmē, ka tā vietā, lai palaistu Testa ceļš '$ ScriptFolder $ _' mēs faktiski darīsim kaut ko vairāk Pārbaudes ceļš "C: Scripts Surnames.txt" (pieņemot, ka jūsu skripts ir C: Scripts, un ForEach-Object pašlaik strādā pie "Surnames.txt").

Katram failam nav atrasts, Write-Host ievietos kļūdas ziņojumu sarkanā krāsā, lai pateiktu, kura faila nav. Tad palielina $ MissingFiles mainīgo, kas tiks izmantots nākamajā gabalā, kļūdas un atmest, ja trūkst jebkādu failu.

if ($MissingFiles) { Write-Host 'Could not find $MissingFiles source file(s). Aborting script.' -ForegroundColor Red Remove-Variable ScriptFolder,RequiredFiles,MissingFiles Exit }

Šeit ir vēl viens veikls triks, ko varat darīt ar apgalvojumiem. Lielākajā daļā gidu jūs redzēsiet, vai paziņojumi jums palīdzēs izmantot operatoru, lai pārbaudītu atbilstības nosacījumu. Piemēram, šeit mēs varētu izmantot ja ($ MissingFiles -gt 0) lai redzētu, vai $ MissingFiles ir lielāks par nulli. Tomēr, ja jūs jau izmantojat komandas, kurās tiek parādīta loģiskā vērtība (tāpat kā iepriekšējā blokā, kurā izmantojām testa ceļu), tas nav nepieciešams. Varat arī bez tā rīkoties šādos gadījumos, kad jūs vienkārši testējat, lai noskaidrotu, vai skaitlis nav nulles. Jebkurš nulles skaitlis (pozitīvs vai negatīvs) tiek uzskatīts par taisnīgu, bet nulle (vai, kā tas var notikt šeit, neeksistējošs mainīgais) tiks uzskatīts par nepatiesu.

Ja $ MissingFiles eksistē un nav nulles, Write-Host publicēs ziņojumu, kurā norādīts, cik daudz failu trūkst, un skripts pārtrauks darbību. Tad Remove-Variable noņems visus mainīgos, kurus esam izveidojuši, un iziet no skripta. Regulārajā PowerShell konsolei Remove-Variable šim mērķim nav īsti vajadzīgs, jo skriptu iestatītie mainīgie parasti tiek izmesti, kad skripts iziet. Tomēr PowerShell ISE rīkojas mazliet savādāk, tāpēc jūs varat to saglabāt, ja jūs plānojat skriptu palaist no turienes.

Ja visas lietas ir kārtībā, skripts turpināsies. Vēl viens sagatavošanās darbs ir aizstājvārds, ka mēs patiešām priecāsimies, ka vēlāk.

New-Alias g Get-Random

Pseidonīmus izmanto, lai izveidotu aizstājējus nosaukumus komandām. Tie var būt noderīgi, lai palīdzētu mums iepazīties ar jauno saskarni (piem., PowerShell ir iebūvēti pseidonīmi, piemēram dir -> Get-ChildItem un cat -> Get-Content) vai arī īsās rokasgrāmatas par vispārpieņemtajām komandām. Šeit mēs izveidojam a ļoti īsa norāde uz Get-Random kas tiks izmantota daudz vēlāk.

Get-Random diezgan daudz dara to, ko norāda tās nosaukums. Ņemot vērā masīvu (piemēram, vārdu sarakstu) kā ievadi, tas atlasa izlases vienumu no masīva un izspiež to ārā. To var arī izmantot, lai ģenerētu nejaušos skaitļus. Tomēr lieta, kas jāatceras par Get-Random un cipariem, tāpat kā daudzas citas datora operācijas, sāk skaitīt no nulles. Tā vietā, lai Get-Random 10 tas nozīmē, ka dabīgāk "dodiet man skaitli no 1 līdz 10", tas tiešām nozīmē "dot man skaitli no 0 līdz 9." Varat precīzāk noteikt numuru izvēli, lai Get-Random rīkotos tāpat kā jūs dabiski gaidīt, bet mums tas nebūs vajadzīgs šajā skriptā.

2.daļa: lietotāja ievades un darba sākšana

Lai gan skripts, kas ģenerē tikai vienu izlases vārdu un tālruņa numuru, ir lieliski, daudz labāk ir, ja skripts ļauj lietotājam norādīt, cik vārdu un numuru viņi vēlas iegādāties vienā partijā. Diemžēl mēs patiešām nevaram uzticēties lietotājiem, lai viņi vienmēr sniegtu derīgu informāciju. Tātad, tur ir mazliet vairāk par šo, nekā tikai $ UserInput = Read-Host.

while (!$ValidInput) { try { [int]$UserInput = Read-Host -Prompt 'Items to be generated' $ValidInput = $true } catch { Write-Host 'Invalid input. Enter a number only.' -ForegroundColor Red } }

Vienlaikus izteiktais apgalvojums pārsniedz $ ValidInput vērtības pārbaudi un noraida. Tik ilgi, kamēr $ ValidInput ir nepatiesa vai nepastāv, tā turpinās looping caur savu skripta bloku.

Izmēģinājuma paziņojums veic lietotāja ievadi, izmantojot Read-Host, un mēģina pārvērst to par veselu skaitli. (Tas ir [int] pirms Read-Host.) Ja tas ir veiksmīgi, tas noteiks $ ValidInput uz true, lai cikla laikā var iziet. Ja tas nav veiksmīgs, nozvejas bloks uzrāda kļūdu un, tā kā $ ValidInput nesaņēma iestatījumu, cilnes cilpa atkal atgriezīsies un uzaicina lietotāju vēlreiz.

Kad lietotājs ir pareizi uzrādījis numuru kā ievadi, mēs vēlamies, lai skripts paziņo, ka tā sāks faktiski veikt savu darbu, un pēc tam to darīs.

Write-Host '`nGenerating $UserInput names & phone numbers. Please be patient.`n' 1..$UserInput | ForEach-Object { <# INSERT RANDOM NAME & NUMBER GENERATOR HERE #> }

Neuztraucieties, mēs neaizmirsīsim tev pašu, lai noskaidrotu nejauša nosaukuma un numura ģeneratora kodu. Tas ir tikai vietturētājs komentārs, kas parādīs, kur nākamā sadaļa (kur notiek reālais darbs) būs piemērota.

Rakstīt-Host līnija ir diezgan vienkārša. Tas vienkārši saka, cik vārdu un tālruņu numuru skripts gatavojas ģenerēt, un lūdz lietotājam būt pacietīgam, kamēr skripts veic savu darbu. The`nrindas sākumā un beigās ir jāievieto tukša rinda pirms un pēc šī izejas, lai tikai vizuāli nošķirtu ieejas līniju un vārdu un numuru sarakstu. Ņemiet vērā, ka tas ir atzveltnes atzīme (AKA "kapa akcents" - parasti atslēga virs cilnes, kreisajā pusē no 1), nevis katra apostrofa vai viena cipari n.

Nākamajā daļā parādīts citāds veids, kā varat izmantot cilni ForEach-Object. Raksturīgi, ka, ja vēlaties, lai skriptu bloks tiktu darbināts noteiktā reižu daudzumā, jūs izveidosiet regulāru cilpu, piemēram par ($ x = 1; $ x -le $ UserInput; $ x ++) {<# INSERT SCRIPT HERE #>}.ForEach-Object ļauj mums to vienkāršot, pievienojot to veselu skaitļu sarakstam, un tā vietā, lai stāstītu, ka tā faktiski var izdarīt kaut ko ar šiem veseliem skaitļiem, mēs vienkārši dodam tai statisku skriptu bloku, lai to izpildītu, kamēr tam nav skaitļu.

3.daļa: Nejauša vārda ģenerēšana

Nosaukuma ģenerēšana ir vienkāršākais pārējais šī procesa bits. Tas sastāv tikai no trim posmiem: uzņemšanas uzvārdu, dzimuma izvēli un vārda izvēli. Atcerieties, ka atkal esam izmantojuši aizstājvārdu, ko mēs saņēmām Get-Random? Laiks, lai sāktu to izmantot.

$Surname = Get-Content '$ScriptFolderSurnames.txt' | g $Male = g 2 if ($Male) {$FirstName = Get-Content '$ScriptFolderMales.txt' | g} else {$FirstName = Get-Content '$ScriptFolderFemales.txt' | g}

Pirmajā rindā tiek parādīts mūsu uzvārdu saraksts, tiek nodots izlases atlasītājā un piešķirto nosaukumu piešķir $ uzvārdam.

Otrā līnija nosaka mūsu personas dzimumu. Atcerieties, ka Get-Random sāk skaitīt no nulles, un kā nulle ir nepatiesa un viss pārējais ir taisnība? Tā mēs izmantojam Get-Random 2 (vai daudz īsāks g 2 pateicoties mūsu pseidonīmam - abas izraisa izvēli starp nulli vai vienu), lai izlemtu, vai mūsu cilvēks ir vīrietis vai ne. Ja / else paziņojums pēc tam nejauši izvēlas vīrieša vai sievietes vārdu attiecīgi.

4.daļa: Izlases tālruņa numura ģenerēšana

Šeit ir patiešām jautra daļa. Agrāk mēs parādījām, kā ir vairāki veidi, kā padarīt nederīgu vai fiktīvu tālruņa numuru. Tā kā mēs nevēlamies, lai visi mūsu skaitļi izskatās pārāk līdzīgi viens otram, mēs katru reizi izvēlamies nederīgu skaitļu formātu. Nejauši izvēlētie formāti tiks definēti pēc to apgabala koda un apmaiņas koda, ko kopīgi glabās kā $ prefiksu.

$NumberFormat = g 5 switch ($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'} }

Pirmā rinda ir vienkārša nejauša skaitļu paaudze, lai izvēlētos, kuru formātu mēs sekojam līdzi tālruņa numuram. Tad slēdža paziņojums ņem šo izlases izvēli un ģenerē attiecīgi $ prefiksu. Atcerieties, ka saraksts ar nederīgiem tālruņa numuru tipiem? $ NumberFormat vērtības 0-3 atbilst pirmajiem četriem šajā sarakstā. Vērtība 4 var ģenerēt vienu no pēdējiem diviem, jo abi izmanto "555" apmaiņas kodu.

Šeit jūs varat arī redzēt, ka mēs izmantojam vēl vienu triku ar divkāršiem pēdiņām. Divkāršas kotācijas ne tikai ļauj interpretēt mainīgos pirms rindiņas izvadīšanas - tie arī ļauj jums apstrādāt skriptu blokus. Lai to paveiktu, iesaiņojiet šādu skripta bloku: "$ (<# SCRIPT HERE #>)". Tātad, kas jums ir iepriekš, ir daudz individuāli randomizētu ciparu, no kuriem daži ir vai nu ierobežoti to diapazonā, vai iestatīti statiski saskaņā ar noteikumiem, kas mums jāievēro. Katrai virknei ir iekavās un atstarpes, kā jūs parasti gribētu redzēt apgabala kodu un maiņas kodu pārī.

Pēdējā lieta, kas mums jādara, pirms mēs esam gatavi izvadīt savu vārdu un tālruņa numuru, ir ģenerēt abonenta ID, kas tiks saglabāts kā $ Suffix.

switch ($NumberFormat) { {$_ -lt 4} {$Suffix = '$(g 10)$(g 10)$(g 10)$(g 10)'} 4 { switch ($Prefix) { '(800) 555' {$Suffix = '0199'} default {$Suffix = '01$(g 10)$(g 10)'} } } }

Īpašu 555 ciparu noteikumu dēļ mēs nevaram ģenerēt četrus nejaušus ciparus katra tālruņa numura beigās, ko mūsu skripts gatavojas veikt. Tātad, pirmais slēdzis pārbauda, vai mēs nodarbojamies ar 555 numuru. Ja nē, tas ģenerē četrus izlases ciparus. Ja tas ir 555 numurs, otrais slēdzis pārbauda 800 rajona kodu.Ja tas atbilst, ir tikai viens derīgs $ Suffix, ko mēs varam izmantot. Pretējā gadījumā no 01:00 līdz 01:99 ir atļauts noņemt visu.

Ņemiet vērā, ka šis bloks varētu būt rakstīts dažādos veidos, tā vietā, kā tas ir. Abus slēdzienu izteicienus varēja aizstāt ar apgalvojumiem if / else, jo katram no tiem ir tikai divas izvēles. Tā vietā, tā vietā, lai izsauktu "4" kā opciju pirmajam pārslēgšanās paziņojumam, "noklusējums" varētu būt izmantots līdzīgi tam, kā tas tika darīts otrajā, jo tā bija vienīgā iespēja palikt. Izvēle starp if / else vs slēdzi vai kur izmantot noklusējuma atslēgvārdu, nevis konkrētu vērtību, bieži vien ir atkarīgs no personīgās izvēles. Tik ilgi, kamēr tas darbojas, izmantojiet to, ko jūs visērtāk izmantojat.

Tagad ir pienācis laiks produkcijai.

Write-Output '$FirstName $Surname $Prefix-$Suffix' }

Tas ir diezgan vienkāršs, jo tas iekļaujas skriptā. Tas vienkārši izvada vārdu un uzvārdu, kas atdalīti ar atstarpēm, pēc tam vēl vienu atstarpi pirms tālruņa numura. Šeit ir pievienota standarta domuzīme starp Exchange kodu un abonenta ID.

Šī slēgšanas kronšteina apakšā ir no jebkura iepriekšējā cikla "ForEach-Object" cilts beigas, ja to jau esat ieguvis.

5. daļa: skriptu tīrīšana un skriešana

Pēc tam, kad viss darbs ir paveicies, labs skripts zina, kā sakopt pēc sevis. Vēlreiz, zemāk mainītais mainīgais nav īsti nepieciešams, ja jūs gatavojaties palaist skriptu tikai no konsoles, bet jūs to vēlēsieties, ja jūs kādreiz plānojat palaist to ISE.

Remove-Item alias:g Remove-Variable ScriptFolder,RequiredFiles,Surname,Male,FirstName,NumberFormat,Prefix,Suffix,ValidInput,UserInput

Kad tas viss ir izdarīts, saglabājiet skriptu ar paplašinājumu ".ps1" tajā pašā mapē kā vārdu faili. Pārliecinieties, vai jūsu ExecutionPolicy ir iestatīts tā, lai skripts varētu palaist un piešķirtu tam virpuli.

Šeit ir skripta ekrānuzņēmums darbībā:

Jūs varat arī lejupielādēt ZIP failu ar šo PowerShell skriptu un teksta failus ar nosaukumu sarakstiem, izmantojot tālāk redzamo saiti.
Jūs varat arī lejupielādēt ZIP failu ar šo PowerShell skriptu un teksta failus ar nosaukumu sarakstiem, izmantojot tālāk redzamo saiti.

Nejaušais nosaukums un tālruņa numuru ģenerators PowerShell

Ieteicams: