首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么Cygwin可以运行.bat脚本?

为什么Cygwin可以运行.bat脚本?
EN

Stack Overflow用户
提问于 2009-04-24 20:47:42
回答 3查看 22.5K关注 0票数 19

当我在Cygwin中从bash执行.bat脚本时,它是通过什么机制运行的?我知道如果我运行一个.EXE,它就会启动,不管.EXE是来自Cygwin还是来自更传统的环境。我知道当我用#!在一开始,Cygwin提供了它运行的魔力。

但是为什么.bat脚本可以工作呢?Cygwin中有没有一些组件知道什么是Windows .bat脚本以及如何处理它?或者是不可能在Windows下执行一个调用来启动一个不会自动为.bat脚本工作的.EXE文件?

EN

回答 3

Stack Overflow用户

发布于 2012-03-14 02:20:58

正在运行

代码语言:javascript
运行
复制
./test.bat params

from bash似乎等同于

代码语言:javascript
运行
复制
cmd /c test.bat params
票数 13
EN

Stack Overflow用户

发布于 2009-04-24 20:58:43

我相信cygwin中的bash会将bat扩展名视为标记为可执行文件( cygwin的windows约定)。因此,它加载并执行带有相关解释器的文件(cmd.exe,每个操作系统配置),就像它创建一个新的bash实例来运行您的#!脚本(根据posix标准)。

票数 12
EN

Stack Overflow用户

发布于 2013-07-05 04:10:21

如果您想像ShellScript进程一样派生*.cmd文件执行,并将其日志附加到文件中:

代码语言:javascript
运行
复制
cmd /c test.bat > nohup.out &

享受吧!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/787522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档