使用 Windows bat 文件打开 Cygwin 并运行脚本文件

Posted

技术标签:

【中文标题】使用 Windows bat 文件打开 Cygwin 并运行脚本文件【英文标题】:Opening Cygwin with Windows bat file and running script file 【发布时间】:2016-11-14 10:01:05 【问题描述】:

我需要在我的 Windows 机器和 UNIX 服务器之间建立一条隧道,并希望自动化该过程,以便在启动时为我生成隧道。

我使用 ssh 和 autossh 安装 Cygwin 以连接到远程服务器,手动建立连接,并确认连接正常。该过程涉及 3 个命令,虽然数量不多,但自动化会很棒。

在创建一个包含我的 autossh 连接命令的 .sh 脚本文件并使用 Notepad ++ 将其保存为 UNIX 文档(以避免与文件结尾有关的任何潜在冲突)后,我可以在 Cygwin 中导航到此脚本并调用 bash script.sh。之后建立连接,我可以在我的服务器上工作。

我的问题是在创建我的 bat 文件时出现的:

start /d "C:\cygwin\bin\" mintty.exe "C:\Users\user\Documents\Dev\" script.sh

.exe 文件的第一部分可以打开 Cygwin 窗口,但我未能成功将脚本输入其中。我什至尝试在引用脚本文件之前包含一个 --bash 命令,如下所示,但我收到一个命令未知的错误:

start /d "C:\cygwin\bin\" mintty.exe --bash "C:\Users\andrew\Documents\Development\" tunnel.sh

有谁知道是否以及如何打开 Cygwin 窗口并在此窗口中调用脚本文件?这是我第一次创建 bat 文件,所以我希望这可能是一个新手问题,甚至没有人会费心在网上发布解决方案......

【问题讨论】:

【参考方案1】:

你不需要开始。 假设你的 Cygwin 在C:\cygwin 你只需要:

chdir c:\cygwin\bin
mintty /usr/bin/bash -l -c /cygdrive/c/Users/user/Documents/Dev/script.sh

【讨论】:

以上是关于使用 Windows bat 文件打开 Cygwin 并运行脚本文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 Windows bat 文件打开 Cygwin 并运行脚本文件

Windows下利用bat批量打开程序,关闭程序

无法打开.bat文件

windows使用.bat文件批量执行任务

在WINDOWS XP无法打开Tomcat中的Startup.bat,请帮忙找原因

bat脚本通过特定软件打开文件runtime