Windows PowerShell™ je ljuska naredbenog retka koja je pakirana s najnovijim Windows® operativnim sustavima. Program koristi sučelje naredbenog retka i skriptni jezik izgrađen na Microsoftovom .NET™ okviru. Alat je dizajniran da omogući naprednim korisnicima i administratorima sustava izvođenje naprednih funkcija poput administracije poslužitelja, konfiguracije operacijskog sustava ili softverske aplikacije i drugih zadataka kao što je udaljeno održavanje računala. Windows PowerShell™ zamjenjuje Microsoftovu prethodnu ljusku naredbenog retka, MS-DOS®, koja je zahtijevala tumače naredbi cmd.exe i command.com za pokretanje operativnog sustava. Mnogi korisnici Microsoft® PowerShell™ hvale njegovu izvedbu i upotrebljivost kao superiornu u odnosu na prethodnike i konkurente.
Windows PowerShell™ je prvi put razvijen 2006. za operacijske sustave Windows Server® i XP, iako alat nije bio unaprijed instaliran ili pakiran s tim sustavima. Microsoft je projekt u početku nazvao Monad, ali ga je promijenio u MSH, a zatim u Microsoft® Command Shell prije nego što se konačno odlučio na ime PowerShell™ 1.0. Aplikacija je izvorno bila implementirana kao paket Release to Web (RTW) u studenom 2006. Microsoft® nije unaprijed instalirao PowerShell™ sa sustavom Windows Vista®, ali je kasnije razvio verziju PowerShell™ koja je bila kompatibilna s Vistom® i dostupna za preuzimanje kao RTW paket. Operativni sustavi Windows 7® i Server® 2008 uključuju PowerShell™ kao unaprijed instaliranu komponentu.
Windows PowerShell™ koristi naredbe zvane cmdlet, što je skraćenica od command-lets. Ove jednostavne, logične naredbe slijede konvenciju imenovanja glagola-imenica koja je namijenjena uklanjanju nesigurnosti oko svrhe svakog cmdleta. PowerShell™ je unaprijed konfiguriran s više od 100 cmdleta—više ugrađenih naredbi od bilo koje druge ljuske. Zapravo, neki od ugrađenih cmdlet-a temelje se na poznatim naredbama iz MS-DOS®-a i drugih ljuski naredbenog retka kao što je ljuska Unix®, Bash.
Na primjer, ako korisnik upiše “dir” i pritisne tipku za povratak u PowerShell™, program će vratiti popis direktorija, kao što je slučaj u MS-DOS®-u. Isto tako, upisivanjem “pwd” i pritiskom na tipku za povratak u PowerShell™ aplikaciji govori da prikaže trenutni direktorij, što je također istinito u Unixu®. Štoviše, PowerShell™ omogućuje korisnicima da kreiraju vlastite pseudonime za omiljene naredbe, u osnovi dopuštajući pojedincima da postave i koriste bilo koju sintaksu naredbi.
PowerShell™ je Microsoftov odgovor na svijet stručnjaka za informacijsku tehnologiju i naprednih korisnika računala koji su smatrali da je MS-DOS® slab i problematičan i koji su cijenili snagu Unix® alata naredbenog retka. Mnogi stručnjaci se slažu da je PowerShell™ prva ljuska Microsoft® naredbenog retka koja se može natjecati sa svojim Unix® kolegama. Glavna razlika između Unix® ljuski i PowerShell™ je potonja upotreba i manipulacija objektima, za razliku od samo teksta, te njegovo korištenje .NET™ okvira.