Početna » kako da » Kako stvoriti i pokrenuti Bash Shell skripte na Windows 10

    Kako stvoriti i pokrenuti Bash Shell skripte na Windows 10

    S dolaskom Bash ljuske sustava Windows 10, sada možete stvarati i izvoditi Bash skripte ljuske na Windows 10. Također možete uključiti Bash naredbe u Windows batch datoteku ili PowerShell skriptu..

    Čak i ako znate što radite, to nije nužno tako jednostavno kao što se čini. Windows i UNIX koriste različite znakove kraja retka, a datotečni sustav Windows dostupan je na drugom mjestu u Bash okruženju.

    Kako napisati Bash skriptu na Windows 10

    Prilikom pisanja skripti ljuske na Windowsima, imajte na umu da sustavi poput Windowsa i UNIX-a poput Linuxa koriste različite znakove "kraj retka" u tekstualnim datotekama u shell skriptama.

    Drugim riječima, to znači da ne možete jednostavno napisati skriptu u Notepadu. Spremite datoteku u Notepadu i Bash ga neće ispravno protumačiti. Međutim, možete koristiti naprednije uređivače teksta - na primjer, Notepad ++ vam omogućuje da datoteci UNIX-u date znakove na kraju retka klikom na Uređivanje> EOL pretvorba> UNIX / OSX format.

    Međutim, bolje je da napišete skriptu u samom Bash okruženju. Okruženje Bash bazirano na Ubuntu dolazi s oba vi i nano uređivača teksta. Uređivač vi je moćniji, ali ako ga prije niste koristili, možete početi s nano. Lakše je koristiti ako ste novi.

    Na primjer, da biste kreirali bash skriptu u nano, pokrenuli biste sljedeću naredbu u bash:

    nano ~ / myscript.sh

    Time bi se otvorio Nano uređivač teksta koji je usmjeren na datoteku pod nazivom "myscript.sh" u vašem kućnom direktoriju korisničkog računa. (Znak "~" predstavlja vaš home direktorij, tako da je puna putanja /home/username/myscript.sh.)

    Pokrenite shell skriptu s retkom:

    #! / Bin / bash

    Unesite naredbe koje želite pokrenuti, svaka u vlastitom retku. Skripta će pokrenuti svaku naredbu redom. Dodajte znak "#" ispred retka da ga tretirate kao "komentar", nešto što pomaže vama i drugim ljudima da razumiju skriptu, ali koja se ne izvodi kao naredba. Za naprednije trikove potražite detaljniji vodič za Bash skripte na Linuxu. Iste tehnike će raditi u Bashu na Ubuntuu na Windowsima.

    Imajte na umu da ne postoji način pokretanja Windows programa iz Bash okruženja. Ograničeni ste na Linux terminalne naredbe i uslužne programe, kao što biste bili na tipičnom Linux sustavu.

    Na primjer, upotrijebimo osnovnu skriptu "hello world" kao primjer:

    #! / bin / bash # postavi STRING varijablu STRING = "Pozdrav svima!" # ispisuje sadržaj varijable na ekranu echo $ STRING

    Ako koristite Nano uređivač teksta, datoteku možete spremiti pritiskom na Ctrl + O i zatim Enter. Zatvorite editor pritiskom na Ctrl + X.

    Napravite izvršnu datoteku skripte i pokrenite je

    Vjerojatno ćete htjeti izvršiti skriptu kako biste je lakše pokrenuli. Na Linuxu, to znači da morate dati skriptnoj datoteci izvršnu dozvolu. Da biste to učinili, pokrenite sljedeću naredbu u terminalu i usmjerite je na svoju skriptu:

    chmod + x ~ / myscript.sh

    Da biste pokrenuli skriptu, sada je možete pokrenuti u terminalu upisivanjem njegove staze. Kad god želite pokrenuti skriptu u budućnosti, samo otvorite Bash ljusku i upišite put do skripte.

    ~ / Myscript.sh

    (Ako je skripta u trenutnom direktoriju, možete je pokrenuti s ./myscript.sh)

    Kako raditi s Windows datotekama u Bash skripti

    Da biste pristupili Windows datotekama u skripti, trebate odrediti njihov put ispod / mnt / c, a ne njihov Windows put. Na primjer, ako ste željeli odrediti datoteku C: Korisnici Bob datoteka za preuzimanja, trebate navesti putanju /mnt/c/Users/Bob/Downloads/test.txt. Više pojedinosti potražite u našem vodiču za lokacije datoteka u Bash ljusci sustava Windows 10.

    Kako uključiti Bash naredbe u Batch ili PowerShell skriptu

    Konačno, ako imate postojeću skupnu datoteku ili PowerShell skriptu u koju želite uključiti naredbe, možete pokrenuti Bash naredbe izravno pomoću bash -c naredba.

    Na primjer, da biste pokrenuli Linux naredbu u naredbenom retku ili prozoru PowerShell, možete pokrenuti sljedeću naredbu:

    bash -c "naredba"

    Ovaj trik omogućuje dodavanje naredbi Bash u naredbene datoteke ili PowerShell skripte. Prozor ljuske Bash pojavit će se kada se izvodi naredba Bash.

    ažuriranje: Ako imate instalirano više Linux okruženja, možete koristiti naredbu wslconfig za odabir zadanog Linux okruženja koje se koristi kada pokrenete bash -c naredba.


    Da biste stvorili prečac za Bash skriptu iz sustava Windows, jednostavno stvorite prečac kao i obično. Za cilj prečaca upotrijebite bash -c naredbu koju smo naveli gore i usmjerite je na Bash skriptu koju ste stvorili.

    Na primjer, trebali biste postaviti prečac na bash -c "~ / myscript.sh" Za pokretanje primjera skripte iznad. Tu naredbu možete pokrenuti i iz naredbenog retka ili iz prozora PowerShell.