В возвращенном сообщении об ошибке вы указали обратную косую черту между E:
и mydir
, что позволяет предположить, что bash
использует такие символы, как escape-символы.
Однако командная строка Windows (cmd
)использует обратную косую черту в качестве разделителей пути, следовательно, %CD%
содержит такие.Однако bash
ожидает прямую косую черту в качестве разделителей пути.
Поэтому, чтобы заменить все обратные косые черты на прямые косые черты, используйте подстроку подстановки , например:
c:\cygwin64\bin\bash -l -c '%CD:\=/%/my_script.sh'
Если одиночные кавычки также вызывают проблемы, используйте двойные кавычки:
c:\cygwin64\bin\bash -l -c "%CD:\=/%/my_script.sh"