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.