2012-01-02 05:07:33 +0000 2012-01-02 05:07:33 +0000
22
22

Как запустить скрипт оболочки в Windows?

Я пользователь Mac и новичок в Windows. Как выполнить скрипт оболочки в Windows?

Обычно я сохраняю текстовый файл с расширением .sh и запускаю его через Terminal. Но как я могу это сделать в Windows?

Ответы (8)

30
30
30
2012-01-02 05:18:47 +0000

Скрипты с суффиксом .sh обычно являются скриптами оболочек Борна (или bash, или ksh, или zsh - все оболочки, полученные из оболочки Борна). (Обратите внимание, что на Unix-подобных системах, включая MacOS, суффикс .sh не нужен; операционная система смотрит на строку #!/bin/sh в верхней части скрипта, чтобы определить, как его выполнить)

Windows не предоставляет оболочку, подобную Bourne.

Вы можете установить Cygwin , которая предоставляет Unix-подобное окружение под Windows – но у нее нет особенно “родного” окружения. (Редакционный комментарий: Cygwin отлично подходит для таких людей, как я, которым нужно использовать Windows, но на самом деле они предпочитают использовать Unix)

Существуют другие Unix-подобные подсистемы, которые работают под Windows, включая MinGW и пакет Windows Services for UNIX , предоставляемый Microsoft.

Или, вместо того, чтобы пытаться писать и запускать Unix-подобные командные скрипты, вы можете писать пакетные файлы для Windows. Обычно они имеют суффикс .bat или .cmd. Они используют те же команды и синтаксис, что и интерактивная командная строка Windows.

Есть также относительно новая Windows PowerShell ; я сам не знаком с ней, но слышал о ней много хорошего.

7
7
7
2012-01-02 05:09:41 +0000

Вы можете использовать Cygwin . Он обеспечивает линукс как среду в окнах.

2
2
2
2016-09-19 19:31:35 +0000

Есть еще один способ сделать это с помощью Anniversary update for Windows 10 . Теперь в Windows доступна оболочка Bash (Ubuntu).

Для ее использования необходимо установить эту функцию, так как она не включена по умолчанию.

  1. Control Panel -> Programs -> Turn Windows Features On and Off.

  2. Установите флажок для Windows Subsystem for Linux (Beta). Это установит функцию и приглашение к перезагрузке.

Затем вы можете открыть приглашение к команде с помощью команды -> cmd, затем наберите bash или запустите -> bash.exe.

Это даст вам оболочку bash, в которой нет виртуальной машины, Cygwin или виртуального ящика.

2
2
2
2012-01-02 05:16:17 +0000

При выигрыше общими расширениями являются .bat или .cmd. Хорошим источником для команд, используемых в оболочке Windows является ss64 - для CMD и PowerShell. Cygwin не является “обязательным”. Она просто дает вам стиль Linux - используйте BASH на Win.

2
2
2
2012-01-02 12:14:01 +0000

** А как же UWIN?** UWIN - это пакет компьютерных программ, созданный Дэвидом Корном, который позволяет создавать программы, написанные для операционной системы Unix, и запускать их на Microsoft Windows с небольшим количеством изменений, если таковые имеются. Часть разработки программного обеспечения была субподрядчиком компании Wipro, Индия.

Проверьте эту UWIN - Unix для Windows

Сложные возможности UWIN

  1. Доступ почти ко всем инструментам командной строки из Unix на Windows. 245 инструментов командной строки, если быть точным.
  2. Поставляется в комплекте с оригинальным компилятором Unix ‘cc’, а также множеством инструментов типа ‘make’ и необходимых библиотек, которые позволяют собирать и запускать Unix-приложения на машинах под Windows с очень небольшим количеством изменений в исходном коде или вообще без них.
  3. Возможность использования для компиляции программ других компиляторов, таких как Visual C++ или Mingw. Полнофункциональный Perl пакет.
  4. Библиотеки X windows для тех, кто стремится разрабатывать X приложения на Windows. Хотя для запуска таких приложений в Windows нужен X-сервер, не связанный с UWIN.
  5. UWIN поставляется с апплетами панелей управления (доступно через ‘Start->Settings->Control Panel->UWIN’), которые можно использовать для настройки некоторых параметров системы UWIN.

Использование UWIN

  • Запускать Unix-приложения нативно в Windows на полной скорости.
  • Использовать всю мощь утилит командной строки Unix на Windows.
  • Оболочка korn, поставляемая в комплекте с UWIN, позволяет пользователю Unix чувствовать себя как дома в среде Windows.
  • Разрабатывать и запускать UNIX-приложения на Windows.
  • Разрабатывать X-приложения на платформе Windows.

  • Недостатки UWIN

  • UWIN не поставляется в комплекте с X-сервером, поэтому пользователь не сможет запускать X-приложения на Windows. Хотя есть коммерческие X-серверы сторонних производителей, которые могут заполнить этот пробел.

  • UWIN не выпускается под GPL, но свободна для скачивания и использования в образовательных и некоммерческих целях

*Эта программа использовалась, чтобы научить нас Linux Command, когда я учился в колледже… действительно хорошая… *

  • *

Ссылка: WikiPedia Cygwin - это Unix-подобная среда и интерфейс командной строки для Microsoft Windows.

Хорошо то, что Cygwin обеспечивает естественную интеграцию приложений, данных и других системных ресурсов на базе Windows с приложениями, программными средствами и данными Unix-подобной среды.

  • Interix ** Interix - это компонент Сервисов для Unix (SFU) релизов 3.0 и 3.5 (последний распространяется свободно).

Последние выпуски Interix, 5.2 и 6. 0, являются компонентами версий Windows Server 2003 R2, Windows Vista Enterprise и Ultimate, а Windows Server 2008 под названием SUA (Subsystem for Unix-based Applications) Версия 6.1 включена в Windows 7 (Enterprise и Ultimate) и Windows Server 2008 R2 (все версии).

1
1
1
2016-08-25 07:59:50 +0000

Хотя существующие ответы здесь были правильными в то время, Windows 10 does теперь опционально включает модифицированную версию Ubuntu с полной оболочкой bash .

После установки вы можете открыть bash-интерфейс (также как и терминал в OS X/macOS) и запустить скрипт как обычно, т.е.:

chmod +x myscript.sh
./myscript.sh

Если вы хотите запустить скрипт непосредственно из Windows, вы можете создать ярлык в том же каталоге и установить ‘Target’ на что-то вроде этого:

C:\Windows\System32\bash.exe -c "./myscript.sh"

Если путь вашего скрипта относительно расположения ярлыка (как в примере выше), убедитесь, что поле ‘Start in’ также пустое.

0
0
0
2012-01-02 05:09:52 +0000

Тебе понадобится CygWin, и я верю, что ты сможешь просто бежать:

sh yourscript.sh
```.
0
0
0
2012-01-02 11:20:04 +0000

Правильный ответ был дан в комментарии Kenaniah, вы должны использовать пакетные файлы . Вам нужно назвать свой shell-файл с кодом по адресу *.bat, затем вы можете запустить его, нажав на него, или просто ввести его имя в терминале. Обратите внимание, что оконный терминал работает не совсем так, как unix-терминал. Вы найдете много справки и уроков по командам и синтаксису в Интернете. Также существует возможность использовать Windows PowerShell , который кажется более похожим на unix.

Похожие вопросы

3
19
10
28
8