Как я могу связать .sh файлы с Cygwin? - PullRequest
48 голосов
/ 20 сентября 2008

Я бы хотел запустить длинную команду rsync в Cygwin, дважды щелкнув файл .sh в Windows. Он должен начинаться в каталоге, содержащем файл (например, / cygdrive / c / scripts /), чтобы относительные пути работали. Кто-нибудь заставил это работать?

Примечание: я только что нашел здесь , пакет Cygwin, который управляет контекстными меню Windows (Bash Prompt Here). Может быть, есть подсказки.

Ответы [ 13 ]

0 голосов
/ 21 февраля 2010

Я просто не беспокоился. Я связал .sh файлы с Crimson Editor (так как я трачу столько же времени на исправление ошибок, сколько на самом деле их запускаю). Теперь нужно получить правильную комбинацию «открыть с / отредактировать с помощью» для работы в «Типы файлов»> «Дополнительно». Если бы я знал, какой код использует DDE Crimson Editor, это бы упростило задачу; однако на данный момент я не смог его найти.

Это напоминает мне о моих днях в Mac (1993-2008), когда я пытался сканировать приложения для более чем элементарной скриптовости AppleScript.

BZT

0 голосов
/ 20 сентября 2008

Посмотрите на команды assoc и ftype в поле dos. Вот пример для .jpg на моей машине

c:\>assoc .jpg
.jpg=jpegfile

c:\>ftype jpegfile
jpegfile="C:\Program Files\Common Files\Microsoft Shared\PhotoEd\PHOTOED.EXE" "%1"

assoc .sh=bashscript

ftype bashscript="c:\cygwin\bin\bash.exe" "%1"

Убедитесь, что вы изменили путь к bash в команде ftype, чтобы она соответствовала вашей установке cygwin

0 голосов
/ 20 сентября 2008

Одно из работающих решений - создать файл .bat, который откроет cygwin и выполнит ваш скрипт.

Сценарий для выполнения сценария go.sh, расположенный в моем домашнем каталоге:

@echo off

C:
chdir C:\cygwin\bin

bash --login -i ./go.sh
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...