Как запустить файл sh в Windows: пошаговое руководство для новичков
-
Файлы с расширением .sh — это скрипты для оболочки Bash, которые обычно работают в Linux или Unix. В Windows их не запустишь двойным кликом, но есть простые способы это обойти. Эта статья расскажет, как выполнить такой скрипт без лишних заморочек.
Зачем это нужно? Если ты качаешь проект с GitHub или работаешь с кросс-платформенным кодом, .sh-файлы встречаются часто. Они автоматизируют задачи: установка зависимостей, деплой или тесты. Без правильного запуска теряешь время, а с этими методами решишь проблему за минуты.## Установка WSL: базовый способ для Windows
Windows Subsystem for Linux (WSL) — это встроенная подсистема, которая эмулирует Linux прямо в Windows. Она идеальна для .sh-скриптов, не требуя виртуальной машины. Установка занимает пару минут, и после неё Bash становится доступен в командной строке.Сначала включи режим разработчика: зайди в Параметры > Обновление и безопасность > Для разработчиков и активируй переключатель. Затем открой “Включение или отключение компонентов Windows”, найди WSL, поставь галочку и перезагрузи ПК. После рестарта в cmd или PowerShell просто набери
bash— и ты в Linux-окружении. Это работает на Windows 10 и 11 без дополнительных дистрибутивов, если скрипт не требует полного ядра Linux.Теперь перейдём к запуску. Но сначала убедись, что файл в доступной папке — WSL видит диски Windows по пути/mnt/c/. Вот шаги:- Открой Командную строку (cmd) или PowerShell.
- Перейди в папку со скриптом:
cd C:\путь\к\папке. - Запусти:
bash имя_скрипта.sh. Скрипт выполнится, и увидишь вывод.
Если скрипт использует sh, то в WSL лучшеbash, так как чистый sh может не поддерживаться полностью.Шаг Команда Что происходит 1 wsl --install(в новых Windows)Автоустановка WSL + Ubuntu 2 cd /mnt/c/Users/Имя/DesktopПереход к файлу на рабочем столе 3 bash script.shЗапуск скрипта ## Запуск через Git Bash: без установки WSL Если WSL не хочется ставить, возьми Git Bash — он идёт с Git for Windows и имитирует Unix-терминал. Это лёгкий вариант для простых скриптов, без перезагрузок.Скачай Git с официального сайта, установи с опцией “Git Bash”. После этого Git Bash запускается как отдельная консоль с Bash 4.x. Перейди в папку со скриптом командой
cd /c/путь/к/файлу, и выполниsh script.shили./script.shпослеchmod +x script.sh. Git Bash понимает большинство Linux-команд, но для сложных зависимостей (типа GUI) может не хватить.Преимущества: портативно, не меняет систему. Минусы: старые версии Bash, нет полного Linux. Подходит для dev-скриптов вроде npm install или простых утилит.- Установка прав:
chmod +x script.sh— делает файл исполняемым. - Первый shebang: Добавь в начало файла
#!/bin/bashдля автоопределения интерпретатора. - Запуск:
./script.shвместоsh script.sh— быстрее и безопаснее.
Важно: В Git Bash пути Windows конвертируются автоматически,
— это /c/.Метод Плюсы Минусы Git Bash Быстрая установка, портативный Ограниченный Bash, нет пакетов WSL Полноценный Linux Требует ребута ## Установка Ubuntu в WSL для продвинутых скриптов Иногда базовый WSL не хватает — скрипт требует настоящих Linux-библиотек или GUI. Тогда ставим дистрибутив вроде Ubuntu через Microsoft Store.Зайди в Microsoft Store, найди Ubuntu, установи. Первый запуск предложит создать пользователя. Рабочий стол Windows доступен по
/mnt/c/users/Имя/desktop. Это даёт полноценную среду: apt для пакетов, systemd частично. Идеально для деплоя или CI/CD-скриптов с зависимостями.После установки:- Набери
ubuntuв cmd — откроется терминал. cd /mnt/c/path/to/script.sh script.shилиbash script.sh.
Если скрипт зависит от ядра, WSL2 лучше: включи wsl --set-default-version 2.Дистрибутив Команда установки Подходит для Ubuntu 20.04 wsl --install -d Ubuntu-20.04Деплой, тесты Debian Microsoft Store Минимализм ## Cygwin или виртуальная машина: когда ничего не подходит Для редких случаев подойдёт Cygwin — эмулятор Unix с кучей пакетов. Скачай с сайта, установи с Bash. Или VirtualBox с Ubuntu — полный Linux, но жрёт ресурсы.Cygwin ставится как софт: выбери bash, sh в инсталлере. Запуск:
sh script.shв его терминале. VM хороша для production-скриптов, но setup дольше. Выбирай по задачам — Cygwin для лёгких, VM для тяжёлых.- Cygwin: Установи, добавь PATH, запускай из cmd.
- VM: Установи VirtualBox, ISO Ubuntu, скопируй файл внутрь.
- Docker:
docker run -v $(pwd):/app ubuntu bash script.sh— контейнер без VM.
Docker требует Docker Desktop, но круто для изоляции.## Альтернативы с двойным кликом и отладкой
Хочешь запускать .sh как .bat? Свяжи расширение с bash.exe в реестре, но это рискованно — скрипты могут сломать систему. Лучше вручную.
Для отладки:
bash -x script.shпокажет каждую команду. Проверь права, пути, зависимости — типичные ошибки. Если ничего не помогает, конверти в PowerShell через переводчики вроде bash-to-ps1.Проблема Решение Permission denied chmod +xCommand not found Установи пакеты в WSL: sudo apt installPath issues Используй /mnt/c/## Почему стоит освоить эти методы на практике Запуск .sh в Windows открывает двери к Linux-инструментам без двойной системы. Ты сэкономишь часы на проектах, где скрипты — норма, и поймёшь разницу между эмуляцией и полноценным окружением.Осталось разобраться с WSL2 vs WSL1 или Docker-альтернативами для enterprise. Подумай, какой метод подойдёт твоим задачам — от простого скрипта до сложного пайплайна.
© 2024 - 2025 ExLends, Inc. Все права защищены.