Med ankomsten av Windows 10s Bash-skal kan du nu skapa och köra Bash shell-skript på Windows 10. Du kan också integrera Bash kommandon i en Windows-batchfil eller PowerShell-skript.
Även om du vet vad du gör är det inte nödvändigtvis så enkelt som det verkar. Windows och UNIX använder olika slutliga tecken, och Windows-filsystemet är tillgängligt på en annan plats i Bash-miljön.
RELATERAT: Så här Installera och använda Linux Bash Shell på Windows 10
När du skriver skalskript i Windows, kom ihåg att Windows och UNIX-liknande system som Linux använder olika "slutet av raden" -tecken i textfiler i skalskript.
Med andra ord betyder det att du inte bara kan skriva ett skalskript i Anteckningsblock. Spara filen i Anteckningsblock och det kommer inte att tolkas ordentligt av Bash. Du kan dock använda mer avancerade textredigerare, till exempel, Notepad ++ gör att du kan ge en UNIX-sluten karaktär genom att klicka på Redigera> EOL-konvertering> UNIX / OSX-format.
Men du är bättre bara skriver skalskriptet i Bash-miljön självt. Den Ubuntu-baserade Bash-miljön levereras med både vi och nano-redaktörer. Vi-redaktören är kraftfullare, men om du aldrig har använt den tidigare kanske du vill börja med nano. Det är lättare att använda om du är ny.
Till exempel, för att skapa ett bash-skript i nano, kör du följande kommando i bash:
nano ~ / myscript.sh
Detta skulle öppna Nano textredigerare pekade på en fil med namnet "myscript.sh" i ditt användarkonto hemkatalog. (Tecknet "~" representerar din hemkatalog, så hela sökvägen är /home/username/myscript.sh.)
Starta ditt skalskript med raden:
#! / Bin / bash
RELATERADE : Nybörjarens guide till Shell Scripting: Grunderna
Ange de kommandon du vill köra, var och en på egen rad. Skriptet kör varje kommando i sin tur. Lägg till ett "#" tecken före en rad för att behandla det som en "kommentar", något som hjälper dig och andra människor att förstå manuset men som inte körs som ett kommando. För mer avancerade tricks, se en mer detaljerad guide till Bash-skript på Linux. Samma tekniker kommer att fungera i Bash på Ubuntu på Windows.
Observera att det inte finns något sätt att köra Windows-program från Bash-miljön. Du är begränsad till Linux-terminalkommandon och verktyg, precis som du skulle vara på ett vanligt Linux-system.
Låt oss just använda ett grundläggande "hej världs" -skript som ett exempel här:
#! / Bin / bash # ställa in STRING-variabeln STRING = "Hello World!" # skriv ut innehållet i variabeln på skärm echo $ STRING
Om du använder Nano textredigeraren kan du spara filen genom att trycka på Ctrl + O och sedan Enter. Stäng redigeraren genom att trycka på Ctrl + X.
Du kommer noga att göra att manuset körs så att du kan köra det lättare. På Linux betyder det att du måste ge skriptfilen det körbara tillståndet. För att göra det, kör följande kommando i terminalen och peka på det på ditt skript:
chmod + x ~ / myscript.sh
För att köra skriptet kan du nu bara köra det i terminalen genom att skriva dess väg . När du vill starta skriptet i framtiden öppnar du bara Bash-skalet och skriver sökvägen till skriptet.
~ / myscript.sh
(Om skriptet finns i den aktuella katalogen kan du köra det med ./myscript.sh)
RELATERAT: Så här får du tillgång till dina Ubuntu Bash-filer i Windows (och din Windows-systemdator i bashantering)
För åtkomst Windows-filer i skriptet måste du ange deras sökväg under / mnt / c, inte deras Windows-sökväg. Om du till exempel vill ange filen C: Users Bob Downloads test.txt måste du ange /mnt/c/Users/Bob/Downloads/test.txt-sökvägen. Se vår guide till filplatser i Windows 10s Bash-skal för mer information.
Om du har en befintlig batchfil eller PowerShell-skript som du vill integrera kommandon i, kan du köra Bash-kommandon direkt med bash - c
kommandot.Till exempel kan du köra ett Linux-kommando i ett kommandotolk eller PowerShell-fönster genom att köra följande kommando:
bash -c "command"
Med det här tricket kan du lägga till Bash kommandon i batchfiler eller PowerShell-skript. Bash-skalfönstret kommer att visas när ett Bash-kommando körs.
Uppdatering
: Om du har flera Linux-miljöer installerade kan du använda kommandot wslconfig för att välja den standard Linux-miljö som används när du kör
bash -c kommando.Skapa en genväg till ett Bash-skript från Windows, skapa bara en genväg som normalt. För genvägs mål, använd kommandot
bash-c
som vi skisserade ovan och peka det på Bash-skriptet du skapade.Du skulle till exempel peka på en genväg på "
bash -c "~ / myscript.sh"
"för att köra exemplet manus ovan. Du kan också bara köra kommandot från ett Kommandotolken eller PowerShell-fönstret.
Hur man kör två eller flera terminalkommandon i en gång i Linux
Om du använder Linux vet du hur användbart kommandoraden kan vara för att arbeta med filer, installera programvara och starta program. Men det kan vara ännu mer effektivt om du kör flera kommandon på en gång. Kombinera två eller flera kommandon på kommandoraden är också känd som "command chaining". Vi visar dig olika sätt att kombinera kommandon på kommandoraden.
Så här låser du din iPhone kameras exponering och fokuserar på iOS
Vi har pratat om kameran på iPhone nyligen och det är överens om att det är en av de bästa, om inte bäst kamera på en mobiltelefon. Idag vill vi förklara hur du låser kamerans exponering och autofokus. Normalt när du använder kameran på din iPhone eller iPad kan du trycka på skärmen och fokusera på det område du väljer.