11Sep
Creators Update'is võimaldab Windows 10 Bashi koormus nüüd käivitada Windowsi binaries ja standardseid käskuvõtmise käske, otse Bashist. Saate käivitada mõlemad Linuxi ja Windowsi programmid samast Bashi shellist või isegi lisada Windowsi käskud Bashi skripti.
Mida peab teadma
Siin on mõned põhilised üksikasjad, mida peate selle funktsiooni tundmaõppimiseks teadma:
- Kasutajakonto : Bashi shellist käivitatavad programmid toimivad nii, nagu oleks käimasolev Windowsi kasutajakonto.
- Permissions : Nendel programmidel on Bash.exe-protsessiga samad õigused. Niisiis, kui soovite, et need käsud võimaldaksid administraatori juurdepääsu, peate käivitama Bashi shelli administraatorina.
- Töökataloog : Windowsi programmid jagavad Bashi shellina sama töölauda. Kui käivitate käsku, milles on loetletud käimasoleva kataloogi sisu, kuvatakse see käimasoleva töökataloogi sisu Bashi shellis. Kasuta töökataloogide muutmiseks käsku cd.
Seda silmas pidades vaatame, kuidas programmi käivitada.
Kuidas Windowsi programmi käivitada
Windowsi käivitamiseks sisestage Bashi shelli programmi faili. exe tee. Pea meeles, et teie Windows C: draiv on saadaval aadressil /mnt/ c Bashis. Bashi keskkond on ka tõstutundlik, seega peate määrama õige suurtähtede.
Oletame, et soovisite käivitada Pingi rakenduse, mis asub aadressil C: \ Windows \ System32 \ PING.EXE.Käivitage järgmine käsk:
/mnt/c/Windows/System32/ PING.EXEJärgmine käsk ei tööta, sest Bash on tõstutundlik:
/mnt/c/windows/system32/ ping.exeSee on natuke keerulisem, kui tee sisaldab keerukaid tähemärke, nagu tühikud ja sulgud,nagu programmifailide kaustad. Te peate "põgenema" tühikuid, sulgudes ja muid keerukaid tähemärke, eelistades neid "\" tähemärgiga.
Näiteks ütleme, et soovisite käivitada Internet Exploreri programmi, mis asub aadressil C: \ Program Files( x86) \ Internet Explorer \ iexplore.exe. Saate käivitada Bashis järgmine käsk:
/mnt/c/ Program \ Files \ \( x86 \) / Internet \ Explorer / iexplore.exePange tähele "\" enne tühiku ja siltide sümbolit. Need märgid peavad olema "põgenenud" või Bash ei saa aru, et tähemärgid on faili tee osa.
Kuidas juhtida argumendina käsu
Bashi koorem edastab argumendid otse käskudele, mida te käitate.
Näiteks kui soovid ping example.com-d käivitada:
/mnt/c/Windows/System32/ PING.EXE example.comVõi kui soovite avada Windowsi hostide faili Notepadis, siis käivitage:
/mnt/c/Windows/System32/ notepad.exe "C: \ Windows \ System32 \ drivers \ etc \ hosts "Te kasutate Windowsi failide suuna otse Windowsi programmile tavalist Windowsi failide arvutit. Seda seetõttu, et Bash esitab argumendi otse. Notepad.exe ja teised Windowsi programmid ootavad Windowsi failide teed.
Kuidas sisseehitatud käsku käivitada
Mõned Windowsi käsklused ei ole. exe-failid, vaid on sisestatud käsureale ise. Näiteks sisaldab see käsku dir, mida tavaliselt võite käsuviibal käitada. Sellise käsu käivitamiseks peate käivitama käsureale seostatud käsuga käsuga käsuga käsuga käsuga käsuga käsuga argumendi / C, näiteks:
/mnt/c/Windows/System32/ cmd.exe / C käskNäiteks dirkäsku, mis käivitatakse käsureale, käitaks käsku järgmine käsk:
/mnt/c/Windows/System32/ cmd.exe / C dirKuidas kataloogid kataloogi lisada
Windowsi teenused Linuxi keskkonnas käsitlevad Windowsi käitatavaid veebisaite sarnaselt Linuxi binaries'idega käsitlemisele. See tähendab, et saate lisada tee juurde kataloogi, mis sisaldab. exe-faile, ja seejärel otse neid. Exe-faile. Näiteks süsteemi32 kataloogi lisamiseks oma teele soovite käivitada:
ekspordi PATH = $ PATH: /mnt/c/Windows/ System32Siis võiksite otse käitada System32 kausta Windows. exe-failid, näiteks:
PING.exe näide.com notepad.exe cmd.exe / C dirKuidas juhtida ühe käsu väljundit teisele
Windowsi käsu väljund saab suunata Linuxi käskudele ja vastupidi. Näiteks võite kasutada ipconfig.exe-kogu käsku, et kuvada oma võrguliideste üksikasjad ja suunata see väljundile otsimiseks Linux grep käsku. Näiteks selleks, et loetleda kogu teie ühenduses olev teave ja otsida jaotisi "IPv4 aadress", kasutaksite järgmist:
/mnt/c/Windows/System32/ ipconfig.exe-kõik |grep "IPv4 aadress"See on põhiprotsess. Need käsud töötavad ka siis, kui nad on kaasatud Bashi skripti, nii et saate kirjutada Bashi skripti, mis sisaldab nii Windowsi käske kui ka Linuxi utiliite. Kui see töötab Bashi shellis, töötab see Bashi skripti.
Ja kui soovite teisele poole minna, võite kasutada käsku "bash -c" tavaliste Windowsi käskude käivitamiseks Bash käskude käivitamiseks.