我刚刚开始使用 Nant 进行构建和测试。我想让它在失败时更改我的命令提示 rune 本的颜色(或背景),以便很容易注意到。
Windows 上命令提示符中的命令是“颜色 4”,将其更改为红色,将颜色 7 更改为白色。
我如何在构建脚本中运行它,echo 不起作用,exec 不起作用(虽然可能使用 exec 错误)。我宁愿不必运行 perl 等来做一些在标准命令提示符窗口中很容易完成的事情。
有谁知道如何做到这一点?
最佳答案
尝试使用自定义任务。如果任务包含在 nant 文件中,您将没有任何外部依赖项。
<project >
<target name="color">
<consolecolor color="Red" backgroundcolor="White"/>
<echo message="red text"/>
<consolecolor color="White" backgroundcolor="Black"/>
<echo message="white text"/>
</target>
<script language="C#">
<code>
[TaskName("consolecolor")]
public class TestTask : Task
{
private string _color;
private string _backgroundColor;
[TaskAttribute("color",Required=true)]
public string Color
{
get { return _color; }
set { _color = value; }
}
[TaskAttribute("backgroundcolor",Required=false)]
public string BackgroundColor
{
get { return _backgroundColor; }
set { _backgroundColor = value; }
}
protected override void ExecuteTask()
{
System.Console.ForegroundColor = (System.ConsoleColor) Enum.Parse(typeof(System.ConsoleColor),Color);
System.Console.BackgroundColor = (System.ConsoleColor) Enum.Parse(typeof(System.ConsoleColor),BackgroundColor);
}
}
</code>
</script>
</project>
关于command-line - 如何在 NAnt 脚本中运行 'color' 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3446135/