Batchfilskripting går helt tilbake til den tiden da MS-DOS ble utgitt i 1981 som et operativsystem for IBMs personlige datamaskiner. Det var i utgangspunktet en klone av Digital Research CP / M, en av de aller første operativsystemene for mikrocomputer. Microsoft gjorde det kjører på IBM-PCer som virker både som kjerne og skall, sammen med noen andre funksjoner i andre skall. Microsoft lanserte flere versjoner av DOS over tid og utvidet batchfilene på mange måter. Deretter kommer Windows som raskt utviklet seg fra et program til et full-fledge operativsystem. Microsoft inkluderte en kommandolinje tolk kalt "Command Prompt" (eller "cmd") i Windows NT-serien av operativsystemer som i utgangspunktet brukte de samme kommandoene til Command.com, men med tilleggsfunksjoner.
I motsetning til tidligere versjoner som bare tillater at en .BAT-fil kjøres i MS-DOS-ledeteksten, gjorde denne utvidede 32-biters kommandolinjestolker batch-språket mer nyttig på grunn av de mange forbedringene og tilleggsfunksjonene. Kommandolinjetolkeren kunne imidlertid ikke gi konsistens fordi de ikke kunne brukes til å automatisere flerfasete funksjoner i det grafiske brukergrensesnittet. Det var ikke kraftig nok til å tilfredsstille kraftbrukere. Så begynte Microsoft å jobbe med en ny tilnærming til kommandolinjestyring og til slutt løslatt en ny forbedret CLI kalt "Monad" i 2002. Det klarte å overvinne manglene i forgjengeren. I 2005 utgav Microsoft allerede tre versjoner av Monad. I 2006 ble navnet formelt forandret til "Windows PowerShell" som bidrar farvel til den gamle skolens batchfilskripting.
Kommandoprompt eller cmd er kommandolinjestolken for Microsoft Windows-operativsystemer som brukes til å automatisere ulike systemrelaterte oppgaver ved hjelp av skript og batchfiler. Ofte referert til som cmd.exe, er det et Windows-program som utsteder kommandoer til systemet som filhåndteringskommandoer som kopiere, lime og slette. Den emulerer mesteparten av kommandolinjevilkårene som er tilgjengelige i MS-DOS via et kommandolinjegrensesnitt. Det ble opprinnelig utgitt som kommandolinje tolk (CLI) for Windows NT-familien av operativsystemer og ble utviklet av Therese Stowell. CMD har innebygde kommandoer for å utføre ulike oppgaver, hvorav de fleste kan utføres som administrator. Kommandoprompt kan nås via snarveien sin i Start-menyen eller via kommandoen cmd Run. Den er tilgjengelig i nesten alle versjoner av Windows.
PowerShell er en mer avansert versjon av cmd som brukes til å kjøre eksterne programmer som ping eller kopiering og automatisere mange forskjellige systemadministrasjonsoppgaver som ikke er tilgjengelige fra cmd.exe. Det er ganske lik CMD, med unntak av at det er kraftigere og bruker forskjellige kommandoer helt. Det er mer enn bare et skall; Det er et skriptmiljø designet spesielt for systemadministratorer til å utføre administrative oppgaver på flere operativsystemer. Det er et oppgavebasert kommandolinjeverktøy og skriptspråk bygget på. Net-rammen. Det påkaller et veldig rikt sett med kommandoer innenfor konteksten av automatiseringsskript kalt "cmdlets" som muliggjør administrasjon i Windows-systemer. De er også enkle å bruke med standardisert syntaks som gjør dem enkle å lage kraftige skript. Det er en meget kraftig kommandolinjestolker enn kommandoprompt som kan tolke både batchkommandoer og PowerShell-kommandoer.
Både cmd og PowerShell er kraftige kommandolinjeverktøy som brukes til å automatisere systemadministrasjonsoppgaver ved å skrive et script / batch-fil. Imidlertid har cmd begrensede administrasjonsfunksjoner i forhold til PowerShell, som derimot er en mer avansert og moderne shell-implementering med tilleggsfunksjoner og forbedringer. PowerShell er spesialdesignet for systemadministratorer å kontrollere og automatisere administrasjonen av Windows-systemer.
PowerShell brukes mest av systemadministratorer til å administrere nettverket, samt systemene og applikasjonene som inngår i nettverket. Det kan effektivt tolke både Batch-kommando og PowerShell-kommandoer, mens cmd kan tolke bare Batch-kommandoer. Kommandoprompt gir et middel til å samhandle med dataprogrammet ved hjelp av kommandoer som er utstedt av brukeren.
I motsetning til kommandoprompt, som bare kan streame av tekst, er produksjonen generert fra en cmdlet mer enn bare strøm av tekst; de rør objekter mellom cmdlets som gjør at de kan dele mer komplekse data mellom cmdlets.
PowerShell bruker mye kraftigere funksjoner kalt "cmdlets", som utgjør et rikt sett med kommandoer for å utføre mer kraftige spørringer med bedre utdata enn funnet i Windows-kommandolinjen. Funksjonene til PowerShell er mye mer kompliserte enn kraftige enn den tradisjonelle kommandoprompt, og de kan meget godt brukes med standardisert syntaks.
PowerShell er mer enn bare et skall; det er et kraftig skriptemiljø basert på .Net-rammen som kan brukes til å kjøre komplekse skript for Windows systemadministrasjon lettere og effektivt enn det ville med Command Prompt. I tillegg inneholder PowerShell flere forbedringer og tilleggsfunksjoner som utvider bruken av det, noe som til slutt forbedrer brukervennligheten.
Både PowerShell og Command Prompt er oppgavebaserte kommandolinjeverktøy som brukes til å automatisere systemadministrasjonsoppgaver raskt, men det er betydelige forskjeller mellom de to når det gjelder funksjonalitet og brukervennlighet. CMD er et grunnleggende kommandolinjeskall, introduserer med Windows NT-familien av operativsystemer med samme standardiserte syntaks og funksjonalitet som DOS. PowerShell, derimot, er et oppgavebasert kommandolinjeskall og skriptspråk basert på .Net-rammen som brukes til å automatisere batchbehandling og lage systemstyringsverktøy. I motsetning til cmd bruker den et rikt sett med kommandoer kalt cmdlets for å utføre systemadministrasjonsoppgaver.