Dobijte količinu riječi, znakova i redaka u datoteci pomoću PowerShell-a
Ponekad je korisno prikupiti neke statističke podatke o tekstualnoj datoteci koju imate. Ako koristite moderan uređivač teksta kao što je Notepad++ ili Geany, vjerojatno ima dovoljno alata za sve moguće slučajeve. Međutim, ako se nalazite u golom Windows okruženju, onda vam PowerShell može pomoći. Evo kratkog savjeta kako ga učinkovito koristiti za izračunavanje broja riječi, znakova i redaka u datoteci.
Oglas
PowerShell je napredni oblik naredbenog retka. Proširen je ogromnim skupom cmdlet-a spremnih za korištenje i dolazi s mogućnošću korištenja .NET frameworka/C# u raznim scenarijima. Ako imate vještinu pisanja skripti, možete stvoriti neke vrlo moćne za automatizaciju sustava Windows. Nedavno je Microsoft učinio ga dostupnim za Linux i OS X.
PowerShell dolazi s korisnim ugrađenim cmdletom Mjera-Objekat. Izračunava vrijednosti svojstava određenih vrsta objekata. Measure-Object izvodi tri vrste mjerenja, ovisno o parametrima u naredbi. Cmdlet može brojati objekte i izračunavati minimum, maksimum, zbroj i prosjek brojčanih vrijednosti. Za tekstualne objekte može brojati i izračunavati broj redaka, riječi i znakova. To je upravo ono što nam treba.
Sve što trebate je proslijediti sadržaj datoteke na ulaz. U tu svrhu možete kombinirati Measure-Object s drugim cmdletom Get-Content. Get-Content cmdlet ispisuje sadržaj tekstualne datoteke.
Dakle, za naš zadatak možemo učiniti sljedeće.
- Otvorite PowerShell
- Upišite ili zalijepite sljedeću naredbu:
Get-Content "F:\usb zaštita od pisanja (nacrt).txt" | mjera -Linija -Zak -Riječ
Ispravite dio putanje datoteke do datoteke koju trebate izmjeriti. U mom slučaju, prikazuje sljedeći izlaz za moj prethodni članak tekst:
- Upotrijebite sljedeću naredbu za brojanje istih bez razmaka:
Get-Content "F:\usb zaštita od pisanja (nacrt).txt" | mjera -Linija -Znak -Riječ -IgnoreWhiteSpace
To je to. Ovaj trik može biti koristan kada trebate dobiti statistiku sadržaja datoteke, ali ne možete dobiti odgovarajuću aplikaciju treće strane za ovaj zadatak.