2012-11-03 48 views
1

我在一个目录中有多个C#源文件(大约50个)。我想要做的就是分别编译它们,即每个应该生成它自己的可执行文件。 (有些文件是一个或2个目录深)用CSC分别在单个目录中编译多个文件

目前我在做什么是

csc *.cs /recurse:*.cs 

这里的问题是,CSC试图编译的所有文件一起发现的多实例方法Main。我知道这是正确的行为,但这不是我正在寻找的。

正在写一个批处理脚本我唯一的选择,或者我可以做某种单一的命令通配符魔术分别编译所有的文件?

回答

6

使用一个简单的蝙蝠for圈像

for /R %f in (*.cs) do csc %f 

应该做

+0

优秀的,这似乎是工作,虽然它是批次代码,这是这些天一个liner.One我终于将让自己学习Windows批处理脚本。干杯。 – xeon111

+0

+1。 CSC一次只能编译单个DLL/EXE。如果你想避免批处理脚本 - 考虑MSBuild并创建相应的项目文件。你应该可以创建一个使用* .cs和执行csc的规则来生成EXE。 –

+1

for循环很容易知道,您可以将它用于批量转换,一些重命名等等。 –