da.phhsnews.com


da.phhsnews.com / Sådan kører du Windows-programmer fra Windows 10's Bash Shell

Sådan kører du Windows-programmer fra Windows 10's Bash Shell


I skabers opdatering kan Windows 10's Bash-shell nu køre Windows-binære filer og standardkommandopomptkommandoer lige fra Bash. Du kan køre både Linux- og Windows-programmer fra samme Bash-shell eller endda indarbejde Windows-kommandoer i et Bash-script.

Hvad du behøver at vide

RELATED: Alt du kan gøre med Windows 10's nye Bash Shell

Her er nogle grundlæggende detaljer, du skal vide om denne funktion:

  • Brugerkonto : Programmer, der startes fra Bash-skalen, kører som om de blev lanceret af den nuværende Windows-brugerkonto.
  • Tilladelser : Disse programmer har samme tilladelser som Bash.exe-processen. Så hvis du vil have disse kommandoer for at få administratoradgang, skal du køre Bash-skalen som administrator.
  • Arbejdskatalog : Windows-programmer deler det samme "arbejdskatalog" som Bash-skalen. Så hvis du kører en kommando, der lister indholdet af den aktuelle mappe, vil det liste indholdet af den aktuelle arbejdsmappe i Bash shell. Brug kommandoencdtil at ændre arbejdsmapper.

Lad os se på, hvordan du kører et program.

Sådan køres et Windows-program

RELATED: Sådan får du adgang til dine Ubuntu Bash-filer i Windows (og dit Windows-systemdrev i Bash)

For at køre et Windows-program skal du indtaste stien til programmets .exe-fil i Bash-skalen. Husk at din Windows C: -drev er tilgængelig på / mnt / c i Bash. Bash-miljøet er også sagerfølsomt, så du skal angive den korrekte aktivering.

Lad os sige, at du ønskede at starte Ping-hjælpeprogrammet, der er placeret på C: Windows System32 PING.EXE. Du vil køre følgende kommando:

/mnt/c/Windows/System32/PING.EXE

Følgende kommando ville ikke fungere, fordi Bash er skærmfølsom:

/ mnt / c / windows /system32/ping.exe

Dette er lidt mere kompliceret, hvis stien indeholder komplekse tegn som mellemrum og parentes, ligesom mapperne Program Files. Du skal "undslippe" mellemrum, parenteser og andre komplekse tegn ved at prefikse dem med et "" tegn.

Lad os sige, at du ønskede at køre Internet Explorer-programmet placeret på C: Program Files (x86) Internet Explorer iexplore.exe. Du skal køre følgende kommando i Bash:

/ mnt / c / Program  Files   (x86 ) / Internet  Explorer / iexplore.exe

Bemærk "" før plads og beslag tegn. Disse tegn skal være "undslippe", eller Bash kan ikke indse tegnene er en del af en filsti.

Sådan sender du et argument til en kommando

Bash-skalen sender argumenter direkte til de kommandoer, du udfører. > Hvis du f.eks. Ville ping example.com, ville du køre:

/mnt/c/Windows/System32/PING.EXE example.com

Eller hvis du ønskede at åbne Windows hosts-filen I Notepad skal du køre:

/mnt/c/Windows/System32/notepad.exe "C: Windows System32 drivers etc hosts"

Du bruger den standard Windows-filsti, når du bestiller en filsti direkte til et Windows-program. Det er fordi Bash passerer argumentet direkte. Notepad.exe og andre Windows-programmer forventer en Windows-filsti.

Sådan kører du en indbygget kommando

Nogle Windows-kommandoer er ikke .exe-filer, men er indbygget i selve kommandopromptet. Dette inkluderer f.eks. Kommandoen

dir, som du normalt kan køre i et kommandoprompt. For at køre en sådan kommando skal du kørecmd.exebinært i forbindelse med kommandopromptet og sende det kommandoen som et argument med / C, som sådan:/ mnt / c / Windows /System32/cmd.exe / C-kommando

Hvis du f.eks. Vil køre kommandoen

dir, der er indbygget i kommandoprompt, skal du køre følgende kommando:/ mnt / c / Windows / System32 / cmd.exe / C dir

Sådan tilføjes biblioteker til stien

Windows Services for Linux-miljøet behandler Windows-eksekverbare filer, som ligner den måde, hvorpå det behandler Linux-binære filer. Dette betyder, at du kan tilføje en mappe med .exe-filer til stien og derefter udføre disse .exe-filer direkte. For eksempel kan du køre:

for at tilføje System32-mappen til din vejeksport PATH = $ PATH: / mnt / c / Windows / System32

Du kan derefter køre Windows .exe-filer, der er placeret i mappen System32 direkte, som sådan:

PING.exe example.com

notepad.exe
cmd.exe / C dir
Sådan røres output af en kommando til en anden

Udgangen af ​​en Windows-kommando kan ledes til en Linux-kommando og omvendt. Du kan f.eks. Bruge kommandoen

ipconfig.exe-altil at liste detaljer om dine netværksgrænseflader og rør det til Linuxgrepfor at søge i output. For eksempel at liste alle oplysninger om din forbindelse og søge efter sektioner, der matcher "IPv4-adresse", vil du køre:/mnt/c/Windows/System32/ipconfig.exe -all | grep "IPv4 Address"

Det er den grundlæggende proces. Disse kommandoer vil også fungere, når de indarbejdes i et Bash-script, så du kan skrive et Bash-script, der indeholder både Windows-kommandoer og Linux-værktøjer. Hvis den kører i Bash-skalen, fungerer den i et Bash-script.

Og hvis du vil gå den anden vej, kan du bruge kommandoen "bash -c" til at køre Bash-kommandoer fra standard Windows Command Prompt .


Sådan opsætter du Kwikset Kevo Fob for at låse din dør uden din telefon

Sådan opsætter du Kwikset Kevo Fob for at låse din dør uden din telefon

Under normale omstændigheder er Kwikset Kevo afhængig af din telefon for at vide, om den skal låse op for din dør. Men hvis du hellere vil bruge en dedikeret nøglefob til det (eller som en sikkerhedskopi, når du glemmer din telefon), kan du oprette Kwikset Kevo Fob for at give din telefon en pause. RELATED: Sådan installeres og opstilles Kwikset Kevo Smart Lock Fob'en er en direkte udskiftning til din telefon, og for kun $ 25 er det ikke så dårligt for en investering, hvis du ikke har din telefonens Bluetooth på hele tiden.

(how-top)

Sådan fjerner du Chromecasts netværksbredde Android-underretninger

Sådan fjerner du Chromecasts netværksbredde Android-underretninger

I et forsøg på at forene alle enheder på samme netværk tilføjede Google en funktion til Google Home-appen (tidligere kaldet "Chromecast"). Nu, hvis nogen spiller noget på en Chromecast i dit hjem, vises det en meddelelse på alle Android-enheder på dit netværk . Det betyder, at hvis din datter ser på min lille pony hele dagen, skal du håndtere meddelelser, der giver dig besked.

(how-top)