Как да стартирате Linux команди отвън на Bash Shell на Windows 10
Windows 10 включва основната “подсистема на Windows за Linux” за работа с Linux приложения, но е достъпна само чрез черупката на Bash. Въпреки това, има начин да стартирате Linux приложения, без първо да стартирате Bash прозорец.
Това е възможно благодарение на bash -c
команда. Използвайте го, за да стартирате команди на Linux чрез командния ред и PowerShell, или дори да създадете пряк път на работния плот, който стартира команда или програма на Linux, когато се стартира.
Актуализация: Ако имате инсталирани няколко Linux среди, можете да използвате командата wslconfig, за да изберете подразбиращата се среда на Linux. Има и начин да се изпълняват команди в конкретни Linux среди.
Как да стартирате Linux команди в командния ред или PowerShell
Преди да направите това, ще трябва да инсталирате и настроите Bash черупката на Windows 10. След като го направите, можете да отворите прозорец на командния ред и да изпълните следната команда, за да изпълните Linux софтуер извън прозореца на Bash:
bash -c "команда"
Например, да кажем, че искате да инсталирате пакета emacs чрез apt-get. Трябва да изпълните следната команда в прозореца на командния ред:
bash -c "sudo apt-get install emacs"
Когато използвате bash -c, Windows ще стартира Bash черупката във фонов режим и ще предаде командата на нея. Командата ще се изпълнява, докато не се направи и след това излезе заедно с черупката на Bash. Всеки терминален изход, който се изпълнява текущата команда, ще се появи директно в прозореца на командния ред, а не в отделен прозорец на обвивката на Bash.
Този трик също ви позволява да изпълнявате команди на Linux в PowerShell, точно както бихте изпълнили нормална изпълнимия файл на Windows. Можете да направите това, като изпълните директно файла .exe, както бихте направили в прозореца на командния ред, или чрез друг метод за изпълнение на изпълними файлове в PowerShell.
bash -c "uname -a"
Както и при прозореца на командния ред, изходът на командата ще се появи директно в PowerShell. Тези методи могат да се използват и за добавяне на команди на Linux към команден файл или скрипт на PowerShell.
Как да стартирате Linux команди От диалоговия прозорец Run или Start Menu
Този трик също работи за изпълнение на команди от диалоговия прозорец Изпълнение, менюто "Старт" или който и да е друг стартер на приложения.
Например, за да стартирате vi от диалоговия прозорец Изпълнение, трябва да натиснете Windows + R на клавиатурата и след това да изпълните следната команда:
bach -c "vi"
Текстовият редактор vi ще се появи в неговия собствен прозорец.
Това също работи за менюто "Старт", така че можете да въведете същата команда директно в менюто "Старт" и да натиснете Enter, за да я изпълните като команда.
Как да стартирате Linux команди с Desktop Shortcut
Най- bash -c
Командата също така дава възможност да се стартират Linux приложения чрез пряк път на работния плот. Например, да кажем, че искате да стартирате редактора на текст vi чрез пряк път на работния плот. Щракнете с десния бутон на мишката върху работния плот, посочете Нов> Нов пряк път и въведете следната цел:
bash -c "vi"
Сега можете да запишете пряк път и той ще стартира vi, когато го кликнете два пъти.
Интересното е, че този трик работи и за стартиране на графични Linux приложения от пряк път на работния плот. Инсталирайте X сървър и настройте графични Linux приложения. Трябва да можете да създавате преки пътища, за да ги стартирате директно.
Трябва обаче да ги стартирате по следния начин:
bash -c "DISPLAY =: 0 команда"
Въпреки че можете да стартирате командите Bash от другаде в Windows, няма начин да стартирате софтуера или изпълнимия файл на Windows директно от прозореца на обвивката на Bash.