30Jun
Windows 10 bevat een onderliggend "Windows Subsystem for Linux" om Linux-applicaties uit te voeren, maar het is alleen toegankelijk via de Bash-shell. Er is echter een manier om Linux-applicaties te draaien zonder eerst een Bash-venster te starten.
Dit is mogelijk dankzij de opdracht bash -c. Gebruik het om Linux-opdrachten uit te voeren via Command Prompt en PowerShell, of maak zelfs een snelkoppeling op het bureaublad die een Linux-opdracht of -programma uitvoert wanneer deze wordt gestart.
Linux-opdrachten uitvoeren in de opdrachtprompt of PowerShell
Voordat u dit doet, moet u de Bash-shell van Windows 10 installeren en instellen. Nadat u dit hebt gedaan, kunt u een opdrachtpromptvenster openen en de volgende opdracht uitvoeren om Linux-software buiten een Bash-venster uit te voeren:
bash -c "command"Stel bijvoorbeeld dat u het emacs-pakket via apt-get wilt installeren. U voert de volgende opdracht uit in een opdrachtpromptvenster:
bash -c "sudo apt-get install emacs"Wanneer u bash -c gebruikt, start Windows een Bash-shell op de achtergrond en geeft het de opdracht door. De opdracht wordt uitgevoerd totdat deze is voltooid en wordt vervolgens afgesloten, samen met de Bash-shell. Elke terminaluitvoer die de huidige opdracht uitvoert, verschijnt direct in het opdrachtpromptvenster in plaats van een afzonderlijk venster Bash-shell.
Met deze truc kun je ook Linux-opdrachten uitvoeren in PowerShell, net zoals je een normaal Windows-uitvoerbaar bestand zou uitvoeren. U kunt dit doen door het. exe-bestand rechtstreeks uit te voeren zoals in een opdrachtpromptvenster of via een andere methode voor het uitvoeren van uitvoerbare bestanden in PowerShell.
bash -c "uname -a"Net als bij een opdrachtpromptvenster, verschijnt de uitvoer van de opdracht rechtstreeks in PowerShell. Deze methoden kunnen ook worden gebruikt om Linux-opdrachten aan een batchbestand of PowerShell-script toe te voegen.
Linux-opdrachten uitvoeren vanuit het uitvoeringsdialoogvenster of Start-menu
Deze truc werkt ook voor het uitvoeren van opdrachten uit het dialoogvenster Uitvoeren, het menu Start of het startprogramma van een andere toepassing.
Als u bijvoorbeeld vi wilt starten vanuit het dialoogvenster Uitvoeren, drukt u op Windows + R op uw toetsenbord en voert u de volgende opdracht uit:
bach -c "vi"De vi-teksteditor verschijnt in een eigen venster.
Dit werkt ook voor het Start-menu, dus je kunt hetzelfde commando rechtstreeks in het Start-menu typen en op Enter drukken om het als een commando uit te voeren.
Linux-opdrachten uitvoeren met een bureaubladsnelkoppeling
De bash -c-opdracht maakt het ook mogelijk om Linux-applicaties te starten via een snelkoppeling op het bureaublad. Stel dat u de vi-teksteditor via een snelkoppeling op het bureaublad wilt starten. U klikt met de rechtermuisknop op het bureaublad en wijst naar Nieuw & gt;Nieuwe snelkoppeling en voer het volgende doel in:
bash -c "vi"U kunt nu de snelkoppeling opslaan en vi starten wanneer u erop dubbelklikt.
Interessant genoeg werkt deze truc ook voor het starten van grafische Linux-applicaties vanaf een snelkoppeling op het bureaublad. Installeer een X-server en stel grafische Linux-desktoptoepassingen in. Je zou in staat moeten zijn om snelkoppelingen te maken om ze direct te starten.
Je zou ze echter zo moeten lanceren:
bash -c "DISPLAY =: 0 commando"Hoewel je Bash-commando's van elders in Windows kunt starten, is er geen manier om Windows-software of uitvoerbare bestanden direct vanuit een Bash-shell te gebruikenvenster.