Thaum sib tham nrog ib tug phooj ywg, kuv mam li nco dheev paub tias cov menyuam kawm qib 8-10 hauv lawv lub tsev kawm ntawv tsis tau qhia programming txhua. Lo lus, Excel thiab txhua yam. Tsis muaj logo, tsis txawm Pascal, tsis txawm VBA rau Excel.
Kuv xav tsis thoob, qhib Internet thiab pib nyeem ntawv - Ib lub luag haujlwm ntawm lub tsev kawm ntawv tshwj xeeb yog los txhawb txoj kev kawm ntawm ib tiam neeg tshiab uas ua tau raws li cov xwm txheej ntawm cov ntaub ntawv hauv zej zog hauv nws theem ntawm kev loj hlob thiab kev ua neej.
Hoob no yuav tso cai rau cov tub ntxhais kawm los sib sau ua ke hauv kev xyaum lawv txoj kev paub txog kev tsim qauv ntawm Pascal programming lus. (los ntawm qhov kev pab cuam ntawm qee lub gymnasium rau 2017)
Thaum kawg, kuv txiav txim siab siv ob peb teev thiab kos ib qho piv txwv ntawm "yuav ua li cas los tsim ib qho yooj yim bot rau cov menyuam kawm ntawv."
Hauv qab no qhov kev txiav yog yuav ua li cas sau lwm yam yooj yim bot hauv Powershell thiab ua kom nws ua haujlwm yam tsis muaj webhook, IPs dawb, cov servers siab, xa cov tshuab virtual hauv huab, thiab lwm yam - ntawm lub PC hauv tsev nrog Windows tsis tu ncua.
Xav tias dawb hlaXyoo 2006, Microsoft tso tawm PowerShell 1.0 rau lub sijhawm ntawd-Windows XP, Vista, thiab Server 2003. Hauv qee txoj kev, nws hloov tej yam xws li cmdbat scripts, vb scripts, Windows Script Host thiab JScript.
Txawm tias tam sim no, PowerShell tsuas tuaj yeem suav tias yog kauj ruam tom ntej tom qab kev xaiv Logo, es tsis yog tej zaum tseem siv Delphi (lossis qee yam laus dua), txawm tias muaj cov loops, chav kawm, kev ua haujlwm, MS GUI hu, Git kev koom ua ke thiab thiaj li nyob.
Powershell yog siv tsis tshua muaj; koj tuaj yeem ntsib nws hauv daim ntawv ntawm PowerShell Core, VMware vSphere PowerCLI, Azure PowerShell, MS Exchange, Desired State Configuration, PowerShell Web Access thiab ib lub kaum os lossis ntau dua tsis tshua siv cov kev pab cuam thiab kev ua haujlwm. Tej zaum nws yuav tau txais cua thib ob nrog kev tso tawm NWS 2, tab sis nws tsis yog raws nraim.
Cia peb txheeb xyuas tias peb tuaj yeem sau rau kev sib tham manually: hu rau qhov chaw nyob ntawm qhov browser
https://api.telegram.org/botΠ²Π°ΡΡΠΎΠΊΠ΅Π½/sendMessage?chat_id=123456789&text="Life is directed motion"
Yog tias koj tau txais cov lus los ntawm bot hauv koj qhov kev sib tham, tsis ua li cas, koj mus rau theem tom ntej.
Txoj kev no (ntawm qhov browser) koj tuaj yeem tshawb xyuas txhua lub sijhawm seb puas muaj teeb meem nrog cov cim txuas, lossis yog tias muaj qee yam zais rau qhov chaw thiab tsis ua haujlwm.
Yam koj yuav tsum paub ua ntej nyeem ntxiv
Telegram muaj ntau hom kev sib tham hauv pawg (qhib, kaw). Rau cov kev sib tham no, qee qhov haujlwm (piv txwv li, id) txawv, uas qee zaum ua rau muaj teeb meem.
Cia peb xav tias nws yog qhov kawg ntawm 2019, thiab txawm tias tus phab ej ntawm peb lub sijhawm, tus paub zoo Man-Orchestra (tus thawj coj, tus kws lij choj, tus kws tshaj lij kev ruaj ntseg, tus kws tshaj lij thiab cov kws tshaj lij MVP) Evgeniy V. qhov txawv ntawm $ i sib txawv los ntawm ib qho array, tau mastered loops, saib nyob rau hauv ob peb xyoos tom ntej no yuav mastered Chocolatey, thiab ces Parallel processing nrog PowerShell ΠΈ ForEach-Object Parallel nws yuav los.
1. Peb xav txog qhov peb bot yuav ua li cas
Kuv tsis muaj tswv yim, kuv yuav tsum xav. Kuv twb tau sau ntawv bot-note. Kuv tsis xav ua bot "uas xa ib yam dab tsi rau qhov chaw." Txhawm rau txuas rau Azure koj xav tau daim npav rho nyiaj, tab sis tus tub ntxhais kawm tau txais nws los ntawm qhov twg? Nws yuav tsum raug sau tseg tias txhua yam tsis zoo li no: cov huab tseem ceeb muab qee lub sijhawm sim dawb (tab sis koj tseem xav tau tus lej credit card - thiab zoo li ib duas yuav raug rho tawm los ntawm nws. Kuv tsis nco qab yog tias nws tau rov qab los.)
Yog tsis muaj AI ML nws tsis txaus siab los ua bot-poor-poet-weaver.
Kuv txiav txim siab los ua ib tug bot uas yuav nco kuv (lossis tsis yog kuv) ntawm lus Askiv los ntawm phau ntawv txhais lus.
Txhawm rau kom tsis txhob cuam tshuam nrog cov ntaub ntawv, phau ntawv txhais lus yuav muab khaws cia rau hauv cov ntawv nyeem thiab hloov kho manually.
Hauv qhov no, txoj haujlwm yog los qhia cov hauv paus ntawm kev ua haujlwm, thiab tsis yog ua kom tsawg kawg yog ib feem ntawm cov khoom tiav.
2. Sim ua dab tsi thiab ua li cas rau thawj zaug
Wb tsim ib daim nplaub tshev C: poshtranslate
Ua ntej, cia saib seb peb muaj powershell li cas, cia peb pib ISE ntawm kev pib-khiav
powershell yog
los yog nrhiav Powershell ISE nyob rau hauv cov kev pab cuam ntsia.
Tom qab tso tawm, ib txwm paub "qee yam ntawm tus editor" yuav qhib; yog tias tsis muaj cov ntawv sau, ces koj tuaj yeem nias "File - tsim tshiab".
Wb saib lub version ntawm powershell - sau nyob rau hauv cov ntawv nyeem:
get-host
thiab nias F5.
Powershell yuav muab khaws cia - "Cov ntawv koj tab tom yuav khiav yuav raug cawm.", peb pom zoo, thiab txuag cov ntaub ntawv los ntawm powershell nrog lub npe hauv C: poshtranslate myfirstbotBT100.
Tom qab tso tawm, hauv lub qhov rais qis dua peb tau txais cov ntaub ntawv:
Name : Windows PowerShell ISE Host
Version : 5.1.(ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅)
Kuv muaj 5.1 ib yam dab tsi, uas txaus. Yog tias koj muaj qhov qub Windows 7/8 ces tsis muaj teeb meem loj - txawm hais tias PowerShell yuav tsum tau hloov kho rau version 5 - piv txwv li. cov lus qhia.
Hom Tau-Date hauv kab hais kom ua hauv qab no, nias Enter, saib lub sijhawm, mus rau hauv paus nplaub tshev nrog cov lus txib
cd
thiab tshem lub vijtsam nrog cov lus txib cls (tsis yog, koj tsis tas yuav siv rm)
Tam sim no cia peb xyuas seb nws ua haujlwm li cas thiab yuav ua li cas - cia peb sau tsis yog tus lej, tab sis ob kab, thiab sim nkag siab tias lawv ua dab tsi. Cia peb tawm tswv yim tawm ntawm kab nrog get-host nrog lub cim # thiab ntxiv me ntsis.
Thiab cia peb khiav cov cai los ntawm nias F5 lossis ">" los ntawm GUI.
Peb tau txais cov zis hauv qab no:
Saturday, December 8, 2019 21:00:50 PM (ΠΈΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΡΠΈΠΏΠ°)
Tam sim no cia saib ob kab no thiab qee cov ntsiab lus nthuav kom peb tsis rov qab mus rau qhov no yav tom ntej.
Tsis zoo li Pascal (thiab tsis yog xwb), PowerShell nws tus kheej sim txiav txim siab yam twg los muab rau qhov sib txawv; cov ntsiab lus ntxiv txog qhov no tau sau rau hauv tsab xov xwm Kev kawm txog kev ntaus ntawv hauv programming lus
Yog li ntawd, los ntawm kev tsim ib qho $TimeNow sib txawv thiab muab nws tus nqi ntawm hnub tim thiab lub sij hawm tam sim no (Tau-Hnub), peb tsis tas yuav txhawj ntau heev txog hom ntaub ntawv yuav nyob ntawd.
Muaj tseeb, qhov kev tsis paub no yuav raug mob tom qab, tab sis qhov ntawd yog tom qab. Hauv qab no hauv cov ntawv nyeem yuav muaj ib qho piv txwv.
ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ. ΠΡΠΏΠΎΠ»Π½ΠΈΠΌ (Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅)
$TimeNow | Get-member
thiab tau ib nplooj ntawv uas tsis nkag siab
Piv txwv ntawm cov ntawv nyeem tsis tau 1
PS C:> $TimeNow | Get-member
TypeName: System.DateTime
Name MemberType Definition
---- ---------- ----------
Add <b>Method </b>datetime Add(timespan value)
..
DisplayHint NoteProperty DisplayHintType DisplayHint=DateTime
Date <b>Property </b>datetime Date {get;}
Year Property int Year {get;}
..
DateTime ScriptProperty System.Object DateTime {get=if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Date")...
Raws li koj tuaj yeem pom, qhov sib txawv ntawm hom TypeName: System.DateTime tau tsim nrog ntau txoj hauv kev (hauv kev nkag siab ntawm qhov peb tuaj yeem ua nrog cov khoom sib txawv no) thiab cov khoom.
Wb hu $TimeNow.DayOfYear - peb tau txais tus lej ntawm hnub ntawm lub xyoo.
Wb hu $TimeNow.DayOfYear | Get-Member - peb tau TypeName: System.Int32 thiab ib pawg ntawm txoj kev.
Wb hu $TimeNow.ToUniversalTime() - thiab tau txais lub sijhawm hauv UTC
Debugger
Qee lub sij hawm nws tshwm sim tias nws yuav tsum ua kom tiav ib qho kev pab cuam mus txog ib kab thiab pom lub xeev ntawm qhov kev pab cuam nyob rau lub sijhawm ntawd. Rau lub hom phiaj no, ISE muaj Debug muaj nuj nqi - toggle break point
Muab ib qho chaw so rau qhov chaw nruab nrab, khiav ob kab no thiab saib seb qhov tawg zoo li cas.
Nws yog dab tsi? Qee yam khoom siv los ntawm cov khoom sib txuas uas muaj cov lus kawg-rau-kawg tus cim, sib tham tus cim, xa tus cim thiab ntau yam ntaub ntawv.
Txawm li cas los xij, peb tsis tas yuav txiav txim siab "qhov khoom siv no yog dab tsi" - ib feem ntawm txoj haujlwm tau ua tiav rau peb. Cia peb saib dab tsi nyob hauv:
Cia peb khaws cov ntaub ntawv tshwm sim nyob rau hauv lub npe myfirstbotBT105 lossis qhov koj nyiam tshaj plaws, hloov lub npe thiab tawm tswv yim tawm tag nrho cov cai uas twb tau sau lawm ntawm
<#start comment 105 end comment 105#>
Tam sim no peb yuav tsum txiav txim siab qhov twg yuav tau txais phau ntawv txhais lus (zoo, qhov twg - ntawm disk hauv ib cov ntaub ntawv) thiab nws yuav zoo li cas.
Tau kawg, koj tuaj yeem sau phau ntawv txhais lus loj loj hauv cov ntawv nyeem ntawm tsab ntawv, tab sis qhov no yog tag nrho ntawm qhov taw tes.
Yog li cia saib dab tsi powershell tuaj yeem ua haujlwm nrog ib txwm.
Feem ntau, nws tsis quav ntsej cov ntaub ntawv twg los ua haujlwm nrog, nws tsis muaj teeb meem rau peb.
Peb muaj kev xaiv: txt (koj tuaj yeem, tab sis vim li cas), csv, xml.
Peb puas tuaj yeem saib xyuas txhua tus?
Cia peb tsim ib chav MyVocabClassExample1 thiab qhov sib txawv $MyVocabExample1
Kuv nco ntsoov tias chav kawm ntawv sau tsis muaj $
qee code #5
write-host "This is part 5"
class MyVocabClassExample1 {
[string]$Original # ΡΠ»ΠΎΠ²ΠΎ
[string]$Transcript
[string]$Translate
[string]$Example
[int]$VocWordID # ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ int Ρ Π΅Π³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠΎΠΉ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ Π΄ΠΈΠΊΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ, Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° - Π½Π΅Π΄Π°Π²Π½ΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ Ρ SSD HPE. ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Ρ Π½Π΅ ΡΡΠ°Π» Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΠΏΠΎΡΠΎΠΌ Π²ΡΠ΅ ΠΆΠ΅ Π΄ΠΎΠΏΠΈΡΠ°Π» ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π».
}
$MyVocabExample1 = [MyVocabClassExample1]::new()
$MyVocabExample1.Original = "Apple"
$MyVocabExample1.Transcript = "[ ΛapΙl ]"
$MyVocabExample1.Translate = "Π―Π±Π»ΠΎΠΊΠΎ"
$MyVocabExample1.Example = "An apple is a sweet, edible fruit produced by an apple tree (Malus domestica)"
# $MyVocabExample1.$VocWordID = 1
$MyVocabExample2 = [MyVocabClassExample1]::new()
$MyVocabExample2.Original = "Pear"
$MyVocabExample2.Transcript = "[ pe(Ι)r ]"
$MyVocabExample2.Translate = "ΠΡΡΡΠ°"
$MyVocabExample2.Example = "The pear (/ΛpΙΙr/) tree and shrub are a species of genus Pyrus"
# $MyVocabExample1.$VocWordID = 2
Cia peb sim sau qhov no rau hauv cov ntaub ntawv siv qauv.
Cia peb rov qab mus rau txoj haujlwm. Peb tau sau cov ntaub ntawv xeem, nyeem nws, cov ntawv khaws cia yog qhov tseeb, yog tias tsim nyog, koj tuaj yeem sau cov ntaub ntawv sib cais me me los ntxiv thiab rho tawm kab.
Cia kuv ceeb toom rau koj tias txoj haujlwm yog los ua ib qho kev cob qhia me me.
Ua hauj lwm hom: Kuv xa cov "piv txwv" hais kom ua rau bot, bot xa kuv ib lo lus randomly xaiv thiab transcription, thiab tom qab 10 vib nas this xa kuv ib tug txhais lus thiab tawm tswv yim. Peb paub yuav ua li cas nyeem cov lus txib, peb kuj xav kawm yuav ua li cas thiaj xaiv tau thiab txheeb xyuas cov npe, thiab rov pib dua cov ntawv txee rau oblivion.
Cia peb uncomment txhua yam yav tas los tawm tswv yim uas tsis tsim nyog, tawm tswv yim tawm tam sim no tsis tsim qauv piv txwv nrog txt thiab csv, thiab txuag cov ntaub ntawv raws li version B106
Auj, yog. Cia peb xa ib yam dab tsi rau bot dua.
6. Kev xa tawm los ntawm kev ua haujlwm thiab lwm yam
Ua ntej ua qhov kev txais tos, koj yuav tsum tsim kom muaj nuj nqi xa "tsawg kawg ib yam dab tsi" uas tsis yog cov lus xeem.
Tau kawg, hauv qhov piv txwv peb yuav tsuas muaj ib qho kev xa thiab tsuas yog ib qho kev ua, tab sis yuav ua li cas yog tias peb yuav tsum ua tib yam li ob peb zaug?
Nws yooj yim dua los sau ib txoj haujlwm. Yog li, peb muaj qhov sib txawv ntawm hom khoom $MyVocabExample4AsArray, nyeem los ntawm cov ntaub ntawv, nyob rau hauv daim ntawv ntawm ib qho array ntawm ntau li ob lub ntsiab lus. Wb mus nyeem.
Nyob rau tib lub sijhawm, peb yuav nrog lub moos; peb yuav xav tau tom qab (qhov tseeb, hauv qhov piv txwv no peb yuav tsis xav tau nws :)
Cia peb mus dhau txhua yam tau txais thiab xa cov lus teb yog tias cov lus yog / lo lus
rooj plaub ntawm kev tsim, ib co piav raws li yog-elseif, yog hu ua powershell ntawm switch. Nyob rau tib lub sijhawm, cov cai hauv qab no siv tus yuam sij -wildcard, uas yog qhov tsis tsim nyog thiab txawm tias muaj teeb meem.
Qee tus lej #7.1
Write-Output "This is part 7"
Foreach ($Result in $Content4Pars01.result) # ΠΠ°, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΡΡΡΡΠ΅Π΅
{
switch -wildcard ($Result.message.text)
{
"/word" {MyFirstFunction($TextForExample1)}
}
}
Cia peb khiav tsab ntawv ob peb zaug. Peb yuav tau txais tib lo lus ob zaug rau txhua qhov kev sim ua tiav, tshwj xeeb tshaj yog tias peb tau ua yuam kev hauv kev siv random.
Tab sis nres. Peb tsis tau xa / lo lus dua, yog vim li cas cov lus rov ua dua?
Cov kab rau xa cov lus rau bot muaj qhov ntev ntev (100 lossis 200 cov lus, kuv xav) thiab yuav tsum tau muab tshem tawm manually.
Qhov no tau piav qhia hauv cov ntaub ntawv, tab sis koj yuav tsum nyeem nws!
Hauv qhov no, peb xav tau qhov ?chat_id parameter, thiab &timeout, &limit, &parse_mode=HTML thiab &disable_web_page_preview=true tseem tsis xav tau.
Cov ntaub ntawv rau telegram api nyob ntawm no Nws hais tias dawb thiab lus Askiv: Tus cim ntawm thawj qhov hloov tshiab yuav tsum tau xa rov qab. Yuav tsum muaj ntau dua los ntawm ib qho ntawm qhov siab tshaj plaws ntawm cov cim ntawm yav dhau los tau txais kev hloov tshiab. Los ntawm lub neej ntawd, hloov tshiab pib nrog qhov ntxov tshaj plaws tsis muaj tseeb hloov tshiab tau rov qab los. Ib qho kev hloov tshiab raug txiav txim siab lees paub sai li sai tau thaum getUpdates raug hu nrog ib qho offset ntau dua tshaj nws update_id. Qhov tsis zoo offset tuaj yeem raug teev tseg kom khaws cov hloov tshiab pib los ntawm -offset hloov tshiab los ntawm qhov kawg ntawm cov kab hloov tshiab. Txhua qhov kev hloov tshiab dhau los yuav tsis nco qab.
Yog, thiab peb yuav rov pib dua thiab rov sau cov haujlwm me ntsis. Peb muaj ob txoj kev xaiv - dhau tag nrho cov lus rau lub luag haujlwm thiab ua tiav nws tag nrho hauv kev ua haujlwm, lossis tsuas yog muab cov lus ID thiab rov pib dua. Piv txwv li, qhov thib ob zoo li yooj yim dua.
Tsis muaj leej twg txwv koj thawj zaug tau txais tag nrho cov lus, ua lawv, thiab tsuas yog tom qab ua tiav kev thov tsis lees paub -> lees paub.
Vim li cas nws thiaj li ua rau kev txiav txim siab hu xov tooj tom qab txhua qhov kev ua tiav? Kev ua tsis tiav yog ua tau nyob rau hauv nruab nrab ntawm kev ua tiav, thiab yog tias piv txwv ntawm kev sib tham dawb, tsis muaj ib qho lus tsis muaj dab tsi tshwj xeeb, ces yog tias koj tab tom ua lwm tus neeg cov nyiaj hli lossis daim npav rho nyiaj, qhov tshwm sim yuav phem dua.