Ako používať príkazy FINDSTR a Select-String v systéme Windows 11/10

Počuli ste už o FINDSTR a Select-String ? Select-String je cmdlet, ktorý sa používa na vyhľadávanie textu a vzorov vo vstupných reťazcoch a súboroch. Je to podobné ako grep na Linuxe(Linux) a FINDSTR na Windows . V tejto príručke vidíme, čo a ako používať príkazy FINDSTR a Select-String v systéme Windows 11/10.

Ako používať príkazy FindSTR a Select-String

 

Čo je FINDSTR a ako používať FINDSTR

FINDSTR je príkaz používaný na vyhľadanie konkrétneho textu v súboroch v systéme Windows(Windows) . Po skratke Find(Find) String sa stal FINDSTR . Používa sa aj na vyhľadávanie súborov so špecifickým textom. Existujú rôzne príkazy FINDSTR na vykonávanie rôznych funkcií. Prvýkrát bol vydaný s Windows 2000 Resource Kit s názvom qgrep . Ide o vstavaný nástroj v systéme Windows(Windows) a jeho súbor je dostupný vo formáte .exe. FINDSTR nevyhľadáva(FINDSTR) nulové bajty ako medzery vo formáte Unicode .

Existuje niekoľko základných pravidiel na používanie príkazu findstr v príkazovom riadku(Command Prompt) alebo iných tlmočníkoch príkazového riadku(Command Line Interpreters) , ktoré vyvinula spoločnosť Microsoft . Oni sú:

  • Každý príkaz FINDSTR musí obsahovať reťazec, za ktorým nasleduje názov súboru.
  • V príkazoch FINDSTR(FINDSTR) môžete použiť doslovné znaky a metaznaky . Doslovné znaky nemajú v syntaxi žiadny špeciálny význam. Písmená a čísla sa nazývajú doslovné znaky. Metaznaky sú symboly, ktoré majú pre každý z nich špecifický význam. Nasledujú akceptované metaznaky v syntaxi a ich význam.

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.

  • Ak chcete hľadať viacero reťazcov, mali by ste vytvoriť textový súbor s kritériami vyhľadávania na samostatnom riadku.
  • Na vyhľadávanie viacerých reťazcov v jednom príkaze použite(Use) medzery medzi reťazcami, s výnimkou syntaxe s /c.

Parametre a ich význam v syntaxi findstr

Parameter

Popis

/b

Zhoduje(Matches) sa so vzorom textu, ak je na začiatku riadku.

/e

Zhoduje(Matches) sa so vzorom textu, ak je na konci riadku.

/l

Doslova spracováva vyhľadávacie reťazce.

/r

Spracuje vyhľadávacie reťazce ako regulárne výrazy. Toto je predvolené nastavenie.

/s

Hľadá(Searches) aktuálny adresár a všetky podadresáre.

/i

Ignoruje veľké a malé písmená pri hľadaní reťazca.

/X

Vytlačí riadky, ktoré sa presne zhodujú.

/v

Vytlačí len riadky, ktoré neobsahujú zhodu.

/n

Vytlačí číslo každého riadku, ktorý sa zhoduje.

/m

Ak súbor obsahuje zhodu, vytlačí sa iba názov súboru.

/o

Pred každým zodpovedajúcim riadkom vytlačí posun znakov.

/str

Preskakuje súbory s netlačiteľnými znakmi.

/off[line]

Nepreskočí súbory, ktoré majú nastavený atribút offline.

/f:<súbor>

Získa zoznam súborov zo zadaného súboru.

/c:<reťazec>

Použije zadaný text ako doslovný vyhľadávací reťazec.

/g:<súbor>

Získa vyhľadávacie reťazce zo zadaného súboru.

/d:<dirlist>

Hľadá(Searches) zadaný zoznam adresárov. Každý adresár musí byť oddelený bodkočiarkou (;), napríklad  dir1;dir2;dir3.

/a:<colorattribute>

Určuje atribúty farieb pomocou dvoch hexadecimálnych číslic. Zadajte  Â pre ďalšie informácie.color
/?

<reťazec>

Určuje text, ktorý sa má vyhľadať v súbore  súboru(filename) . Požadovaný.

<span “>[\<jednotka>:][<cesta>]<názov súboru>[…]

Určuje umiestnenie a súbor alebo súbory na vyhľadávanie. Vyžaduje sa aspoň jeden názov súboru.

/?

Zobrazí pomocníka v príkazovom riadku.

Použitie príkazov findstr

1] Ak chcete vyhľadať slovo microsoft alebo windows v súbore xy, mali by ste použiť:

findstr microsoft windows x.y

2] Ak chcete vyhľadať slovo microsoft windows v súbore xy, mali by ste použiť:

findstr /c:"microsoft windows" x.y

Vo vyššie uvedenom príkaze /csa v súbore hľadá zadaný text „microsoft windows“.

3] Ak chcete nájsť výskyty slova Microsoft s veľkým M v textovom súbore twc.txt, mali by ste použiť:

findstr Microsoft twc.txt

4] Ak chcete vyhľadať konkrétne slovo Microsoft v adresári a jeho podadresároch bez toho, aby ste pripisovali dôležitosť veľkosti písmen, použite:

findstr /s /i Microsoft *.*

Vo vyššie uvedenej syntaxi /ssa používa na vyhľadávanie aktuálneho adresára a jeho podadresárov. /isa používa na ignorovanie typu veľkých písmen (veľké M) v reťazci Microsoft .

5] Ak chcete nájsť riadky, ktoré začínajú To s viacerými medzerami pred slovom a chcete zobraziť číslo riadku, kde sa reťazce vyskytli, použite:

findstr /b /n /r /c:^ *To *.bas

6] Ak chcete hľadať viacero reťazcov vo viacerých súboroch pomocou kritérií vyhľadávania v stringlist.txt a zoznamu súborov v filelist.txt a chcete vidieť výsledky uložené v súbore result.out, použite:

findstr /g:stringlist.txt /f:filelist.txt > results.out

7] Ak chcete nájsť súbory, ktoré obsahujú slovo thewindowsclub v konkrétnom adresári a jeho podadresároch, použite:

findstr /s /i /m \<thewindowsclub\> *.*

8] Ak chcete nájsť súbory, ktoré obsahujú thewindowsclub a ďalšie slová, ktoré začínajú tézou, teplomerom atď., použite:

findstr /s /i /m \<the.* *.*

Toto sú spôsoby, ako môžete použiť príkazy findstr v interpretoch príkazového riadka(Command Prompt) , ako je príkazový riadok atď. Aby ste mohli písať syntax a pravidelne používať príkaz findstr, musíte pochopiť každý parameter a jeho funkciu, ako aj metaznaky a ich význam.

Čo je Select-String a jeho parametre

Predstavte si(Imagine) , že píšete kúsky kódu v PowerShell a stratili ste prehľad o určitých reťazcoch a texte v tomto súbore PowerShell . Musíte to nájsť v tisíckach riadkov kódu v tisíckach reťazcov a slov. Prichádza príkaz Select-String , ktorý vám umožňuje vyhľadávať reťazce a text v týchto vstupných súboroch PowerShell . Je to podobné ako grep na Linuxe(Linux) .

Select-String je cmdlet, ktorý sa používa na vyhľadávanie textu a vzorov vo vstupných reťazcoch a súboroch. Je to podobné ako grep na Linuxe(Linux) a FINDSTR na Windows . Keď použijete Select-String na vyhľadávanie nejakého textu, nájde prvú zhodu v každom riadku a zobrazí názov súboru, číslo riadku a celý riadok, kde sa zhoda vyskytla. Dá sa použiť na nájdenie viacerých zhôd na riadok alebo na zobrazenie textu pred alebo po zhode, prípadne na získanie výsledkov v boolovských výrazoch, ako je pravda(True) alebo nepravda(False) . Môžete ju použiť aj na zobrazenie celého textu okrem zhody výrazu, ktorý použite v príkaze. Zástupné karty (WildCards),(FINDSTR) ktoré používate vo FINDSTRmožno použiť aj v Select-String . Select-String tiež pracuje s rôznymi kódovaniami súborov, ako je ASCII , Unicode atď. Na určenie kódovania súboru používa značku Byte-Order-Mark(Byte-Order-Mark) ( BOM ). Ak v súbore chýba kusovník , (BOM)Select-String bude považovať súbor za UTF8 .

Parametre Select-String

Spoločnosť Microsoft(Microsoft) si predstavila a vyvinula nižšie uvedené parametre, ktoré sa použijú v syntaxi.

-AllMatches

Používa sa na vyhľadávanie všetkých zhôd v riadku na rozdiel od prvej zhody v riadku, ktorý Select-Sting bežne robí.

-CaseSensitive

Znamená to, že pri zhode sa rozlišujú malé a veľké písmená. V predvolenom nastavení Select-String nerozlišuje(Select-String) veľké a malé písmená.

-Context

Používa sa na zachytenie určeného počtu riadkov, ktoré zadáte pred a po riadku zápasu. Ak zadáte 1, zachytí jeden riadok pred a po zápase.

-Culture

V kódovaní existujú určité kultúry ako ordinálne, invariantné atď. Tento parameter sa používa na špecifikáciu kultúry v syntaxi.

-Encoding

Používa sa na špecifikáciu formátu kódovania textu v súboroch ako ASCII , UTF8 , UTF7 , Unicode atď.

-Exclude

Tento parameter sa používa na vylúčenie určitého textu zo súboru.

-Include

Tento parameter sa používa na zahrnutie určitého textu do súboru.

-InputObject

Používa sa na určenie textu, ktorý sa má vyhľadávať.

-List

Používa sa na získanie zoznamu súborov, ktoré zodpovedajú textu.

-LiteralPath

Používa sa na určenie cesty pre vyhľadávanie.

-NoEmphasis

Vo všeobecnosti Select-String zvýrazní zhodu v súbore. Tento parameter sa používa, aby sa zabránilo zvýrazneniu.

-NotMatch

Používa sa na nájdenie textu, ktorý sa nezhoduje so zadaným vzorom.

-Path

Používa sa na určenie cesty, ktorá sa má hľadať, spolu s použitím zástupných znakov.

-Pattern

Parameter sa používa na nájdenie zhody v každom riadku ako vzor.

-Quiet

Tento parameter sa používa na získanie výstupu v boolovských(Boolean) hodnotách ako True alebo False .

-Raw

Používa sa na zobrazenie iba zhodných objektov, nie na zobrazenie informácií o zhode(Match) .

-SimpleMatch

Parameter sa používa na zadanie jednoduchej zhody namiesto zhody regulárneho výrazu.

Rozdiel medzi FINDSTR a Select-String

FINDSTR je spustiteľný súbor z obdobia pred PowerShell , ktorý sa používa na vyhľadávanie textu a reťazcov v súboroch. Select-String je rutina cmdlet prostredia PowerShell , ktorá sa používa na vyhľadávanie textu a vzorov v súboroch. V porovnaní s FINDSTR je Select-String výkonnejšou a komplexnejšou rutinou cmdlet, ktorá zobrazuje veľa informácií o zápase.

Čo je PowerShell ekvivalentom grep?

Select-String je ekvivalent PowerShell grep dostupný v (PowerShell)systéme Windows(Windows) . Funguje rovnako ako grep a poskytuje podrobné informácie o zhode podľa parametrov, ktoré používame v syntaxi.

Funguje FINDSTR na súboroch programu Word?

Áno, FINDSTR funguje na súboroch programu Word . (Word)Nemôže však ukázať nájsť zhody, aj keď sa v súbore nachádzajú reťazce, ktoré ste zadali. Z neznámych technických dôvodov vám môže poskytnúť výsledky v binárnych súboroch vo formátoch .doc, ale nie vo formátoch .docx.

Súvisiace čítanie(Related Read) : Ako skontrolovať verziu prostredia PowerShell v systéme Windows.(How to check the PowerShell version in Windows.)



About the author

Mám vzdelanie v oblasti počítačového inžinierstva a informačných technológií, čo mi dalo jedinečný pohľad na platformy Windows 10 a 11. Najmä mám skúsenosti s Windows 10 " Desktop Experience " a prehliadačom Microsoft Edge. Moje skúsenosti s týmito dvoma platformami mi umožňujú hlboko pochopiť, ako fungujú, a moje odborné znalosti v týchto oblastiach mi umožňujú poskytovať spoľahlivé rady, ako ich zlepšiť.



Related posts