- Chris Hoffman
@chrisbhoffman
- Oppdatert 7 Mars 2018, 2:31pm EDT
med ankomsten av windows 10s bash shell, kan du nå opprette og kjøre bash shell scripts på windows 10. Du kan også innlemme Bash-kommandoer i En windows-batchfil eller PowerShell-skript.
selv om du vet hva du gjør, er dette ikke nødvendigvis så enkelt som det virker. Windows og UNIX bruker forskjellige end-of-line tegn, Og Windows-filsystemet er tilgjengelig på et annet sted I Bash-miljøet.
Hvordan Skrive Et Bash-Skript På Windows 10
RELATERT: Hvordan Installere Og Bruke Linux Bash-Skallet På Windows 10
når du skriver shell-skript På Windows, husk At Windows og UNIX-lignende systemer som Linux bruker forskjellige» end of line » – tegn i tekstfiler i shell-skript.
med andre ord betyr dette at du ikke bare kan skrive et skallskript i Notisblokk. Lagre filen I Notisblokk, og Det vil ikke bli tolket riktig Av Bash. Du kan imidlertid bruke mer avanserte tekstredigerere–For Eksempel, Notepad++ lar deg gi EN FIL UNIX end-of-line tegn ved å klikke Rediger > Eol Konvertering > UNIX / OSX Format.
du har imidlertid det bedre å bare skrive shell-skriptet i Bash-miljøet selv. Den Ubuntu-baserte Bash miljø kommer med både vi og nano tekstredigerere. Vi-editoren er kraftigere, men hvis du aldri har brukt den før, vil du kanskje starte med nano. Det er lettere å bruke hvis du er ny.
for eksempel, for å lage et bash-skript i nano, vil du kjøre følgende kommando i bash:
nano ~/myscript.sh
dette vil åpne Nano-tekstredigereren pekte på en fil med navnet «myscript.sh» i brukerkontoens hjemmekatalog. (Tegnet » ~ » representerer hjemmekatalogen din, så hele banen er / home/username/myscript.sh.)
Start shell script med linjen:
#!/bin/bash
RELATERT: Nybegynnerens Guide Til Shell Scripting: Grunnleggende
Skriv inn kommandoene du vil kjøre, hver på sin egen linje. Skriptet vil kjøre hver kommando i sin tur. Legg til et » # «- tegn foran en linje for å behandle det som en «kommentar», noe som hjelper deg og andre mennesker å forstå skriptet, men som ikke kjøres som en kommando. For mer avanserte triks, se en mer detaljert guide Til Bash-skript På Linux. De samme teknikkene vil fungere I Bash på Ubuntu På Windows.
Merk at Det ikke er mulig å kjøre Windows-programmer fra Bash-miljøet. Du er begrenset Til Linux terminal kommandoer og verktøy, akkurat som du ville være på et typisk Linux-system.
la oss for eksempel bare bruke et grunnleggende «hello world» – skript som et eksempel her:
#!/bin/bash # set the STRING variable STRING="Hello World!" # print the contents of the variable on screen echo $STRING
hvis Du bruker Nano text editor, kan du lagre filen ved å trykke Ctrl + O og Deretter Enter. Lukk redigeringsprogrammet Ved å trykke Ctrl + X.
Gjør Skriptet Kjørbart og Kjør det
Du vil sannsynligvis ønske å gjøre skriptet kjørbart slik at du kan kjøre det lettere. På Linux betyr det at du må gi skriptfilen den kjørbare tillatelsen. For å gjøre det, kjør følgende kommando i terminalen og pek den på skriptet ditt:
chmod +x ~/myscript.sh
for å kjøre skriptet kan du nå bare kjøre det i terminalen ved å skrive banen. Når du vil starte skriptet i fremtiden, åpner Du Bare Bash-skallet og skriver banen til skriptet.
~/myscript.sh
(Hvis skriptet er i gjeldende katalog, kan du kjore det med ./myscript.sh)
Hvordan Jobbe Med Windows-Filer i Et Bash-Skript
RELATERT: Hvordan Få Tilgang Til Ubuntu Bash-Filene I Windows (og Windows-Systemstasjonen I Bash)
for å få tilgang Til Windows-filer i skriptet, må du spesifisere banen under /mnt/c, ikke Deres windows-bane. For eksempel, hvis Du ønsket Å spesifisere C:\ Brukere \ Bob \ Nedlastinger \ test.txt-fil, du må spesifisere /mnt / c / Users / Bob/Downloads / test.txt banen. Se vår guide til filplasseringer I Windows 10s Bash shell for mer informasjon.
Slik Innlemmer Du Bash-Kommandoer i Et Batch-Eller PowerShell-Skript
RELATERT: Hvordan Sette Standard Linux-Distribusjon På Windows 10
Til Slutt, Hvis du har en eksisterende batchfil eller PowerShell-skript du vil innlemme kommandoer i, kan Du kjøre Bash-kommandoer direkte ved hjelp av kommandoen bash -c
.For eksempel, for å kjøre En Linux-kommando i En Ledetekst eller PowerShell-vindu, kan du kjøre følgende kommando:
bash -c "command"
dette trikset lar Deg legge Til Bash-kommandoer i batchfiler eller PowerShell-skript. Bash shell-vinduet vises når En Bash-kommando kjører.Oppdatering: hvis du har flere Linux-miljøer installert, kan du bruke kommandoen wslconfig til å velge Standard Linux-miljø som brukes når du kjører kommandoen bash -c
.
for å lage en snarvei til En Bash script fra Windows, bare lage en snarvei som normalt. For snarveiens mål, bruk kommandoenbash -c
vi skisserte over og pek den På Bash-skriptet du opprettet.
for eksempel vil du peke en snarvei på» bash -c "~/myscript.sh"
» for å kjøre eksempelskriptet ovenfor. Du kan også bare kjøre denne kommandoen fra En Ledetekst eller PowerShell-vindu også.Chris Hoffman Er Sjefredaktør For How-To Geek. Han har skrevet om teknologi i over et tiår og var En PCWorld-spaltist i to år. Chris har skrevet For New York Times, blitt intervjuet som teknologiekspert på tv-stasjoner som Miami ‘ S NBC 6, og hadde sitt arbeid dekket av nyheter som BBC. Siden 2011 Har Chris skrevet over 2000 artikler som har blitt lest nesten en milliard ganger – – – og det er bare her På How-To Geek.Les Hele Bio »