Домашняя » как » Как запускать команды Linux извне оболочки Bash в Windows 10

    Как запускать команды Linux извне оболочки Bash в Windows 10

    Windows 10 включает базовую «Подсистему Windows для Linux» для запуска приложений Linux, но она доступна только через оболочку Bash. Тем не менее, есть способ запуска приложений Linux без предварительного запуска окна Bash.

    Это возможно благодаря Баш-с команда. Используйте его для запуска команд 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 из диалогового окна «Выполнить» или из меню «Пуск»

    Этот прием также работает для запуска команд из диалогового окна «Выполнить», меню «Пуск» или любого стороннего средства запуска приложений.

    Например, чтобы запустить vi из диалогового окна «Выполнить», вы должны нажать Windows + R на клавиатуре, а затем выполнить следующую команду:

    bach -c "vi"

    Текстовый редактор vi появится в собственном окне.

    Это также работает для меню «Пуск», поэтому вы можете ввести ту же команду непосредственно в меню «Пуск» и нажать Enter, чтобы запустить ее в качестве команды..

    Как запускать команды Linux с помощью ярлыка на рабочем столе

    Баш-с Команда также позволяет запускать приложения Linux с помощью ярлыка на рабочем столе. Например, допустим, вы хотите запустить текстовый редактор vi с помощью ярлыка на рабочем столе. Вы щелкнете правой кнопкой мыши по рабочему столу, выберите «Создать»> «Новый ярлык» и введите следующую цель:

    bash -c "vi"

    Теперь вы можете сохранить ярлык и он запустит vi, когда вы дважды щелкните по нему.

    Интересно, что этот прием также работает для запуска графических приложений Linux с ярлыка на рабочем столе. Установите X-сервер и настройте графические приложения для Linux. Вы должны иметь возможность создавать ярлыки для их непосредственного запуска.

    Тем не менее, вы должны запустить их так:

    bash -c "DISPLAY =: 0 command"

    Несмотря на то, что вы можете запускать команды Bash из других источников Windows, невозможно запустить программное обеспечение или исполняемые файлы Windows непосредственно из окна оболочки Bash..