Kuinka käyttää FINDSTR- ja Select-String-komentoja Windows 11/10:ssä
Oletko koskaan kuullut FINDSTR:stä ja Select- (Select-String)Stringistä(FINDSTR) ? Select-String on cmdlet, jota käytetään etsimään tekstiä ja kuvioita syöttömerkkijonoissa ja tiedostoissa. Se on samanlainen kuin grep (Windows)Linuxissa(Linux) ja FINDSTR Windowsissa . Tässä oppaassa näemme, mitä ja miten FINDSTR- ja Select-String- komentoja käytetään Windows 11/10:ssä.
Â
Mikä on FINDSTR ja miten FINDSTR :ää käytetään(FINDSTR)
FINDSTR on komento, jota käytetään etsimään tiettyä tekstiä tiedostoista Windowsissa(Windows) . Find Stringistä(FINDSTR) lyhennettynä tuli FINDSTR . Sitä käytetään myös tiettyä tekstiä sisältävien tiedostojen etsimiseen. On olemassa useita FINDSTR- komentoja eri toimintojen suorittamiseen. Se julkaistiin ensimmäisen kerran Windows 2000 Resource Kitin(Resource Kit) kanssa nimellä qgrep . Se on Windowsin(Windows) sisäänrakennettu työkalu, ja sen tiedosto on saatavilla .exe-muodossa. FINDSTR ei etsi nollatavuja kuten välilyöntejä (FINDSTR)Unicode - muodossa.
Findstr-komennon käyttämiseen komentokehotteissa(Command Prompt) tai muissa Microsoftin(Microsoft) kehittämissä komentorivilulkeissa(Command Line Interpreters) on joitain perussääntöjä . He ovat:
- Jokaisen FINDSTR- komennon tulee sisältää merkkijono, jota seuraa tiedostonimi.
- Voit käyttää kirjaimellisia merkkejä ja metamerkkejä FINDSTR - komennoissa. Literaalimerkeillä ei ole mitään erityistä merkitystä syntaksissa. Kirjaimia ja numeroita kutsutaan literaaleiksi merkeiksi. Metamerkit ovat symboleja, joilla on kullekin oma merkityksensä. Seuraavat ovat syntaksin hyväksytyt metamerkit ja niiden merkitykset.
Meta-character | Value |
---|---|
. | Wildcard – Any character |
* | Repeat – Zero or more occurrences of the previous character or class. |
^ | Beginning line position – Beginning of the line. |
$ | Ending line position – End of the line. |
[class] | Character class – Any one character in a set. |
[^class] | Inverse class – Any one character not in a set. |
[x-y] | Range – Any characters within the specified range. |
\x | Escape – Literal use of a meta-character. |
\<string | Beginning word position – Beginning of the word. |
string\> | Ending word position – End of the word. |
- Sinun tulee luoda tekstitiedosto, jossa hakuehdot on erillisellä rivillä, kun haluat etsiä useita merkkijonoja.
- Käytä(Use) välilyöntejä merkkijonojen välillä etsiäksesi useita merkkijonoja yhdestä komennosta lukuun ottamatta syntaksia
/c
.
Parametrit ja niiden merkitys findstr-syntaksissa
Parametri
Kuvaus
/b
Vastaa(Matches) tekstikuviota, jos se on rivin alussa.
/e
Vastaa(Matches) tekstikuviota, jos se on rivin lopussa.
/l
Käsittelee hakumerkkijonoja kirjaimellisesti.
/r
Käsittelee hakumerkkijonoja säännöllisinä lausekkeina. Tämä on oletusasetus.
/s
Hakee(Searches) nykyisestä hakemistosta ja kaikista alihakemistoista.
/i
Ei huomioi merkkien kirjainkokoa etsiessään merkkijonoa.
/x
Tulostaa täsmälleen vastaavat viivat.
/v
Tulostaa vain rivit, jotka eivät sisällä osumaa.
/n
Tulostaa jokaisen vastaavan rivin rivinumeron.
/m
Tulostaa vain tiedoston nimen, jos tiedosto sisältää osuman.
/o
Tulostaa merkkisiirron ennen jokaista vastaavaa riviä.
/s
Ohittaa tiedostot, joissa on ei-tulostettavia merkkejä.
/off[line]
Ei ohita tiedostoja, joiden offline-attribuutti on asetettu.
/f:<tiedosto>
Hakee tiedostoluettelon määritetystä tiedostosta.
/c:<merkkijono>
Käyttää määritettyä tekstiä kirjaimellisena hakumerkkijonona.
/g:<tiedosto>
Hakee hakumerkkijonot määritetystä tiedostosta.
/d:<hakemisto>
Hakee(Searches) määritetystä hakemistoluettelosta. Jokainen hakemisto on erotettava puolipisteellä (;), esimerkiksi dir1;dir2;dir3
.
/a:<väriattribuutti>
Määrittää väriattribuutit kahdella heksadesimaalinumerolla. Kirjoita   saadaksesi lisätietoja.color
/?
<merkkijono>
Määrittää tekstin, jota haetaan tiedostonimestä(filename) . Edellytetään.
<span “>[\<asema>:][<polku>]<tiedostonimi>[…]
Määrittää haun sijainnin ja tiedoston tai tiedostot. Vähintään yksi tiedostonimi vaaditaan.
/?
Näyttää ohjeen komentokehotteessa.
Findstr-komentojen käyttö
1] Jos haluat etsiä sanaa microsoft tai windows tiedostosta xy, käytä:
findstr microsoft windows x.y
2] Voit etsiä sanaa microsoft windows tiedostosta xy käyttämällä:
findstr /c:"microsoft windows" x.y
Yllä olevaa komentoa /c
käytetään etsimään tiedostosta määritettyä tekstiä "microsoft windows".
3] Jos haluat löytää sanan Microsoft isolla M-kirjaimella esiintymät tekstitiedostosta twc.txt, käytä:
findstr Microsoft twc.txt
4] Jos haluat etsiä tiettyä sanaa Microsoft hakemistosta ja sen alihakemistoista ilman, että kirjoitat tapauksia, käytä:
findstr /s /i Microsoft *.*
Yllä olevassa syntaksissa /s
käytetään etsimään nykyisestä hakemistosta ja sen alihakemistoista. /i
käytetään ohittamaan kirjainkoko (iso M) merkkijonossa Microsoft .
5] Jos haluat löytää rivit, joiden alussa on useita välilyöntejä ennen sanaa ja haluat näyttää rivinumeron, jossa merkkijonot esiintyivät, käytä:
findstr /b /n /r /c:^ *To *.bas
6] Jos haluat etsiä useita merkkijonoja useista tiedostoista käyttämällä hakuehtoja stringlist.txt-tiedostossa ja tiedostoluetteloa tiedostoluettelossa filelist.txt ja haluat nähdä tulokset, jotka on tallennettu tiedostoon result.out, käytä:
findstr /g:stringlist.txt /f:filelist.txt > results.out
7] Jos haluat löytää tiedostot, jotka sisältävät sanan thewindowsclub tietystä hakemistosta ja sen alihakemistoista, käytä:
findstr /s /i /m \<thewindowsclub\> *.*
8] Jos haluat löytää tiedostoja, jotka sisältävät thewindowsclubin ja muita sanoja, jotka alkavat vastaavalla opinnäytetyöllä, lämpömittarilla jne., käytä:
findstr /s /i /m \<the.* *.*
Näillä tavoilla voit käyttää findstr-komentoja komentorivitulkeissa, kuten komentokehote(Command Prompt) , jne. Sinun on ymmärrettävä jokainen parametri ja sen toiminto sekä metamerkit ja niiden merkitys kirjoittaaksesi syntaksia ja käyttääksesi findstr-komentoa säännöllisesti.
Mikä on Select-String ja sen parametrit
Kuvittele(Imagine) , että kirjoitat koodinpätkiä PowerShellissä(PowerShell) ja olet kadottanut tietyt merkkijonot ja tekstin kyseisessä PowerShell - tiedostossa. Sinun on löydettävä se monilta tuhansilta koodiriveiltä tuhansien merkkijonojen ja sanojen sisällä. Siellä tulee Select-String- komento, jonka avulla voit etsiä merkkijonoja ja tekstiä näistä PowerShell - syöttötiedostoista. Se on samanlainen kuin grep Linuxissa(Linux) .
Select-String on cmdlet, jota käytetään etsimään tekstiä ja kuvioita syöttömerkkijonoissa ja tiedostoissa. Se on samanlainen kuin grep (Windows)Linuxissa(Linux) ja FINDSTR Windowsissa . Kun tekstin etsimiseen käytetään Select-Stringiä(Select-String) , se löytää ensimmäisen osuman jokaiselta riviltä ja näyttää tiedoston nimen, rivinumeron ja koko rivin, jolla vastaavuus esiintyi. Sitä voidaan käyttää useiden vastaavuuksien etsimiseen riviä kohden tai tekstin näyttämiseen ennen vastaavuutta tai sen jälkeen tai saada tuloksia Boolen lausekkeilla, kuten tosi(True) tai epätosi(False) . Â Voit myös käyttää sitä näyttämään koko tekstin paitsi lausekkeen vastaavuuden. käytä komennossa. FINDSTR(WildCards) : ssä käyttämäsi jokerikortit(FINDSTR)voidaan käyttää myös Select-Stringissä(Select-String) . Select-String toimii myös eri tiedostokoodausten kanssa, kuten ASCII , Unicode jne. Se käyttää Byte-Order-Mark ( BOM ) -koodausta tiedostokoodauksen määrittämiseen. Jos tiedostoluettelo(BOM) puuttuu tiedostosta, Select-String olettaa tiedoston muodossa UTF8 .
Select-Stringin parametrit
Microsoft suunnitteli ja kehitti alla olevat parametrit, joita käytetään syntaksissa.
-AllMatches
Sitä käytetään etsimään kaikki rivin osumat, toisin kuin rivin ensimmäinen vastaavuus Select-Sting yleensä tekee.
-CaseSensitive
Se tarkoittaa, että vastaavuus on kirjainkoolla eroteltu. Oletusarvoisesti Select-String ei erota kirjainkoolla.
-Context
Sitä käytetään kaappaamaan määritetty määrä rivejä, jotka syötät ennen ja jälkeen ottelun rivin. Jos syötät 1, se kaappaa yhden rivin ennen ja jälkeen ottelun.
-Culture
Koodauksessa on tiettyjä kulttuureja, kuten ordinaal, invariant jne. Tätä parametria käytetään kulttuurin määrittämiseen syntaksissa.
-Encoding
Sitä käytetään määrittämään tekstin koodausmuoto tiedostoissa, kuten ASCII , UTF8 , UTF7 , Unicode jne.
-Exclude
Tätä parametria käytetään tietyn tekstin jättämiseen pois tiedostosta.
-Include
Tätä parametria käytetään sisällyttämään tiettyä tekstiä tiedostoon.
-InputObject
Sitä käytetään määrittämään haettava teksti.
-List
Sitä käytetään tekstiä vastaavien tiedostojen luettelon hakemiseen.
-LiteralPath
Sitä käytetään määrittämään haun polku.
-NoEmphasis
Yleensä Select-String korostaa osuman tiedostossa. Tätä parametria käytetään korostuksen välttämiseen.
-NotMatch
Sitä käytetään etsimään tekstiä, joka ei vastaa määritettyä kuviota.
-Path
Sitä käytetään määrittämään haettava polku sekä yleismerkkien käyttö.
-Pattern
Parametria käytetään etsimään vastaavuus jokaiselta riviltä mallina.
-Quiet
Tätä parametria käytetään tulosteen saamiseksi Boolen(Boolean) arvoina, kuten True tai False .
-Raw
Sitä käytetään vain vastaavien kohteiden näkemiseen vastaavuustietojen(Match) sijaan .
-SimpleMatch
Parametria käytetään yksinkertaisen vastaavuuden määrittämiseen säännöllisen lausekkeen vastaavuuden sijaan.
Ero FINDSTR:n(FINDSTR) ja Select-Stringin välillä(Select-String)
FINDSTR on PowerShell - aikaa edeltävä suoritettava tiedosto, jota käytetään tekstin ja merkkijonojen etsimiseen tiedostoista. Select-String on PowerShell - cmdlet, jota käytetään tekstin ja kuvioiden etsimiseen tiedostoista. Verrattuna FINDSTR : iin Select-String on tehokkaampi ja monimutkaisempi cmdlet, joka näyttää paljon tietoa osuvuudesta.
Mikä on PowerShell - vastine grepille?
Select-String on PowerShell - vastine grepille, joka on saatavana Windowsissa(Windows) . Se toimii samalla tavalla kuin grep ja se antaa yksityiskohtaista tietoa vastaavuudesta syntaksissa käyttämiemme parametrien mukaan.
Toimiiko FINDSTR Word-tiedostoissa?
Kyllä, FINDSTR toimii Word - tiedostoissa. Mutta se ei voi näyttää hakutuloksia, vaikka syöttämäsi merkkijonot olisivat siellä tiedostossa. Se voi antaa sinulle tuloksia binääritiedostoina .doc-muodossa, mutta ei .docx-muodossa joistakin tuntemattomista teknisistä syistä.
Aiheeseen liittyvää luettavaa(Related Read) : PowerShell-version tarkistaminen Windowsissa.(How to check the PowerShell version in Windows.)
Related posts
Luettelo DISKPART-komennoista ja niiden käyttäminen Windows 11/10:ssä
Komentorivin näyttäminen Windows 11/10:n Task Managerissa
Kuinka tappaa prosessi komentorivillä Windows 11/10:ssä
ChkDsk-komentorivin asetukset, kytkimet, parametrit Windows 11/10:ssä
Videon koon muuttaminen komentorivillä FFmpegillä Windows 10:ssä
Kuinka avata komentokehote kansiossa Windows 11/10:ssä
Kuinka avata Järjestelmän ominaisuudet Ohjauspaneelissa Windows 11/10:ssä
Kuinka käyttää Windows 11/10:n sisäänrakennettuja Charmap- ja Eudcedit-työkaluja
Luo luettelo käynnistysohjelmista komentorivin tai PowerShellin kautta
Rekisterin palauttaminen komentokehotteen avulla Windows 11/10:ssä
Suorita komento (Win + R) -ruudun poistaminen käytöstä Windows 11/10:ssä
Microsoft Intune ei synkronoidu? Pakota Intune synkronoimaan Windows 11/10:ssä
URI-komennot avaamaan Microsoft Store -sovellukset Windows 11/10:ssä
Korjaa Crypt32.dll ei löydy tai puuttuva virhe Windows 11/10:ssä
Microsoft Store -sovellusten avaaminen komentokehotteesta
Käytä FTP-palvelinta komentokehotteen avulla Windows 10:ssä
Kuinka käyttää komentoriviä ohjelman tappamiseen
Ota verkkoyhteydet käyttöön nykyaikaisessa valmiustilassa Windows 11/10:ssä
Kuinka luetella kaikki Windows-palvelut PowerShellin tai komentorivin avulla
Mikä on RegAsm.exe? Kuinka poistaa dll:n rekisteröinti RegAsm.exe:n avulla?