Även om Windows fortfarande dominerar på skrivbordet så kommer allt fler, inte minst utvecklare, i kontakt med Linux. Många populära verktyg för både utvecklare och driftspersonal är Linuxbaserade, så även om man sitter med Windows hela dagarna så är det läge att bekanta sig med Linux.
Och nu när Linux populära kommandotolk Bash finns tillgänglig även på Windows så är det lättare än någonsin att komma i gång. Här tipsar IDG News om när Bash på Windows passar bra och om saker man ska se upp med.
Tillsammans med Linuxleverantören Ubuntu har Microsoft byggt något som kallas Windows Subsystem for Linux. Det innebär att man med hjälp av Bash kan jobba med Windows som om det vore Linux, utan att använda Linuxkärnan, genom att skriva Bashkommandon.
Läs också: Dos-prompten lever i Windows 10 – men det krävs lite ansträngning för att hitta den
Hur står sig Bash mot Powershell, som är den etablerade kommandotolken i Windows?
Powershell kan beskrivas som Microsofts ramverk för konfiguration, som kan användas för att automatisera arbete. Bash förlitar sig mer på kommandon i textfiler. Ett detaljerat exempel på skillnader är när man listar filer. Då visar Powershell filerna som en samling filobjekt, medan Bash visar dem som följd av textsträngar.
Det här kan låta som rena grekiskan, men är en typisk skillnad. Bash har sina rötter i Unixvärlden, där det är praxis att skicka textutmatning från ett kommando vidare som inmatning till nästa kommando. Så det är logiskt att Bash returnerar resultat som textsträngar. I praktiken fungerar det bra att jobba på båda sätten.
I praktisk användning kanske man inte märker så mycket skillnad, eftersom det går att köra Bashkommandon i Powershell, till exempel ls för att lista filer. Men då kör man i själva verket små program i Powershell. Ls blir ett alias för kommandot Get-ChildItem. Det går att se vilka alias som finns i Powershell med kommandot Get-Alias.
Eftersom Bash fungerar direkt i Windows slipper man starta om i olika lägen eller köra flera virtuella maskiner för att få tillgång till Linuxkommandon. Och eftersom Bash har tillgång till filsystemet i Windows kan man manipulera filer både med de vanliga Windowskommandona och med Bashkommandon.
Vad finns det för användningsområden för Bash på Windows?
Det mest uppenbara användningsfallet är kanske för utvecklare som behöver använda både Windows- och Linux-verktyg, vilket inte är ovanligt för till exempel webbutvecklare. I stället för att köra flera virtuella maskiner med de olika operativsystemen, eller köra specialprogram i Windows som översätter till ”Linuxspråk” är det tänkbart, och kanske smidigare, att använda Bash.
Ett sådant exempel är att köra kommandon för versionskontroll på Github, vilket blir enklare med Bash än med Githubklienten för Windows. Ytterligare ett exempel är att arbeta med vissa Linuxfiler, vilket blir enklare med Bash.
Läs också: Powershell blir öppen källkod och släpps för Linux
Finns det inga nackdelar med Bash på Windows? Jo, så klart.
Till att börja med är Bash på Windows fortfarande en betaversion och det finns en del “oslipade hörn”. Microsoft själva säger till exempel att kanske inte alla skript körs perfekt varje gång. Men Microsoft jobbar på det och försöker åtgärda problem.
En annan nackdel är att Bash på Windows är skapat för utvecklare, inte för driftsfolk som behöver full åtkomst till serverfunktionalitet. I vissa lägen krävs fortfarande en fullständig Linuxdistribution.
Dessutom är syftet med Bash att göra viss Linuxfunktionalitet tillgänglig på Windows, inte att alla Linuxverktyg ska kunna samverka sömlöst med Windowsverktyg. Det är alltså svårt att bygga lösningar som inbegriper både Windows- och Linuxkomponenter.
Men för många utvecklare är Bash på Windows definitivt ett välkommet tillskott i verktygsarsenalen. Med tanke på de satsningar Microsoft gjort på öppna program under senare år kan man förvänta sig att företaget anstränger sig att göra ett bra jobb med Bash på Windows.