Kako pronaći i zamijeniti više redaka u PowerShell-u

Možda ćete svoje nizove morati pretvoriti u jedan red da biste ih zamijenili

  • Pisanje PowerShell skripti može biti od velike pomoći u automatizaciji zadataka, ali može biti teško morati pretraživati ​​posvuda da biste zamijenili više redaka teksta.
  • Uz nekoliko naredbi, pokazujemo vam kako to postići bez potrebe za korištenjem dodatnih alata.

xINSTALIRAJTE KLIKOM NA PREUZMI DATOTEKU

Za rješavanje raznih problema s računalom preporučujemo DriverFix:Ovaj softver će održavati vaše upravljačke programe u ispravnom stanju i tako vas zaštititi od uobičajenih računalnih grešaka i kvarova hardvera. Sada provjerite sve svoje upravljačke programe u 3 jednostavna koraka:
  1. Preuzmite DriverFix (provjerena datoteka za preuzimanje).
  2. Klik Započni skeniranje pronaći sve problematične upravljačke programe.
  3. Klik Ažurirajte upravljačke programe kako biste dobili nove verzije i izbjegli kvarove sustava.
  • DriverFix je preuzeo 0 čitatelja ovog mjeseca.

Windows PowerShell jedan je od najmoćnijih uslužnih programa naredbenog retka u OS-u. Problem je, međutim, što korisnici imaju malo ili nimalo informacija o njegovim opsežnim mogućnostima. Na primjer, PowerShell može pronaći i zamijeniti više redaka teksta u datoteci.

Ovo je odlično za mnoge stvari, uključujući promjenu baze koda u više datoteka. U ovom ćemo članku objasniti kako zamijeniti više redaka teksta u datoteci pomoću PowerShell-a.

Zašto moram zamijeniti više redaka u PowerShell-u?

Više redaka u PowerShell-u odličan je način da svoje skripte učinite čitljivijima. Također su korisni kada želite koristiti jednu izjavu u više redaka, ali je ne želite rastaviti na više izjava.

U programiranju više redaka znači pisanje jedne naredbe ili instrukcije u dva ili više redaka.

Možda se pitate zašto bi nam trebalo više redaka. Najočitiji razlog je čitljivost i izbjegavanje pogrešaka pri upisivanju dugih naredbi jednu po jednu.

Možemo koristiti više redaka kada imamo više od jedne naredbe za istovremeno izvršavanje. To čini naš kôd čitljivijim i lakšim za razumijevanje drugim ljudima.

Iako je sve ovo sjajno, neki korisnici više vole zamijeniti više redaka u PowerShellu. Nije teško zamijeniti redak po redak, ali postaje teško i dugotrajno kada se radi o zamjeni više redaka odjednom.

Kako mogu zamijeniti liniju u PowerShell-u?

Operator zamjene u PowerShell-u zgodan je način za zamjenu niza drugim nizom. Na primjer, ako želite zamijeniti sve instance riječi "test" riječju "ispit", možete koristiti sljedeću naredbu:

PS> "test" - Zamijenite "test", "ispit"

Metoda Zamijeni ima dva parametra:

  • Niz za pretraživanje koji želite pronaći.
  • Zamjenski niz koji želite koristiti umjesto niza za pretraživanje.

Iz gornjeg primjera već možete zaključiti da će vam trebati puno vremena ako tražite i zamijenite više redaka.

Da biste zamijenili više redaka, morat ćete upotrijebiti naredbu Regex. PowerShell regex naredba ima dva parametra:

  • Podudaranje – Omogućuje vam da odredite uzorak za traženje u nizu unosa. Također možete navesti više uzoraka odvojenih zarezima.
  • Zamijeniti – Zamjenjuje sva pojavljivanja navedenog podudaranja navedenom zamjenskom vrijednošću.

Međutim, ima neka ograničenja. Može zamijeniti samo prvo pojavljivanje podudaranja unutar retka. Zaobilazno rješenje bit će pretvaranje koda u višeredni niz.

Nakon što ga pretvorite, PowerShell će cijeli unos tretirati kao jedan niz, što olakšava njegovu zamjenu.

1. Pretvori niz

  1. Udari Windows ključ, vrsta PowerShell u traci za pretraživanje i kliknite Pokreni kao administrator.
  2. Možete koristiti prekidač raw za pretvaranje više redaka u jedan niz u PowerShellu. Kada koristite prekidač -raw, morat ćete navesti naziv datoteke.
  3. Na primjer, da biste pretvorili, primijenili biste sljedeću naredbu: Get-Content C:\user\test1.txt -Raw
  4. To uključuje lokaciju datoteke i naziv datoteke.

2. Podudarni niz

Parametar podudaranja dizajniran je za pronalaženje jednog ili više znakova koji odgovaraju određenom uzorku.

Na primjer, ako želite pronaći sve riječi koje počinju s "c", u nizu, možete koristiti sljedeću naredbu:

[regex]::matches("c*") | gdje-objekt{$_ -kao "*c*"}

Pročitajte više o ovoj temi
  • Kako jednostavno zaobići dijeljenje lozinke za Netflix
  • Što je Mobsync.exe i kako ga onemogućiti
  • Kako omogućiti ažuriranje sustava Windows u registru [Brzi koraci]

3. Zamijenite linije

Nakon što pronađete podudaranja koja želite zamijeniti, možete izvršiti naredbu zamjene na sljedeći način:

PS> [regex]::Replace($str, "c", "d")

PowerShell-ova metoda pronalaženja i zamjene može biti vrlo korisna tehničkim korisnicima. Nadamo se da smo ovim postom prilično dobro naučili kako pronaći i zamijeniti jedan red pomoću PowerShell odzivnika.

Sada znamo da se to može postići relativno lako i da strukturu zapovijedi nije tako teško slijediti. Ako ste početnik, vježba čini savršena.

Ostali korisni PowerShell parametri koji bi vas mogli zanimati uključuju VlastSpakao ErrorAction, o čemu smo detaljno raspravljali.

The Blok Try-Catch također može biti vrijedno vašeg vremena, posebno ako želite uhvatiti bilo kakve pogreške u svom kodu.

Slobodno dodajte svoje savjete o svim drugim korisnim informacijama koje smo možda izostavili.

Još uvijek imate problema? Popravite ih ovim alatom:

SPONZORIRANO

Neki problemi vezani uz upravljačke programe mogu se brže riješiti korištenjem namjenskog alata. Ako i dalje imate problema s upravljačkim programima, samo preuzmite DriverFix i pokrenite ga u nekoliko klikova. Nakon toga, pustite ga da preuzme i ispravi sve vaše pogreške u tren oka!

Popravak: Windows PowerShell se nastavlja otvarati pri pokretanju problema u sustavu Windows 11 ili 10

Popravak: Windows PowerShell se nastavlja otvarati pri pokretanju problema u sustavu Windows 11 ili 10PowershellWindows 10Windows 11

PowerShell korisnicima pruža mogućnost automatizacije raznih administrativnih zadataka i upravljanja konfiguracijama na sustavu koje nisu dostupne putem naredbenog retka. Sličan je naredbenom retku...

Čitaj više
PowerShell implementacija nije uspjela s problemom HRESULT 0x80073D02, popravkom

PowerShell implementacija nije uspjela s problemom HRESULT 0x80073D02, popravkomPowershell

Vidite li ovu poruku o pogrešci dok izvodite skriptu "Add-AppxPackage: implementacija nije uspjela s HRESULT: 0x80073D02, Paket se nije mogao instalirati jer su resursi koje mijenja trenutno u upot...

Čitaj više
PowerShell se ne može nazvati učitanim jer je pokretanje skripti onemogućeno na ovom popravku sustava

PowerShell se ne može nazvati učitanim jer je pokretanje skripti onemogućeno na ovom popravku sustavaPowershellWindows 10Windows 11

Korisnici Windowsa mogu pokretati svoje PowerShell skripte pomoću PowerShell terminala sa samo jednom naredbom. Ali, ponekad, obično za korisnike koji prvi put dolaze, poruka o pogrešci "Powershell...

Čitaj više