繁体   English   中英

修剪MSBuild FileLogger输出

[英]Trim MSBuild FileLogger output

如果我编译此Delphi 2007项目

program MyProject;

{$APPTYPE CONSOLE}

procedure Test;
var
  i: Integer;
begin
  if i = 666 then
    i := 42;
end;

begin
  Test;
end.

从命令行像

MSBuild MyProject.dproj /t:Rebuild /p:Configuration=Release /l:FileLogger,Microsoft.Build.Engine;logfile=log.txt;verbosity=minimal

我得到此日志文件:

__________________________________________________
    Projekt C:\Documents and Settings\pcbs1251\My Documents\RAD Studio\Projekte\MyProject\MyProject.dproj (Rebuild-Ziel(e)):

    C:\Program Files\CodeGear\RAD Studio\5.0\bin\dcc32.exe -B -DRELEASE [SNIP] MyProject.dpr   
    CodeGear Delphi für Win32 Compiler-Version 18.5
    Copyright (c) 1983,2007 CodeGear

    MyProject.dpr(10) Hinweis: H2077 Auf 'i' zugewiesener Wert wird niemals benutzt

    c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Borland.Delphi.Targets : warning : MyProject.dpr(9) Warnung: W1036 Variable 'i' ist möglicherweise nicht initialisiert worden
    MyProject.dpr(9) Warnung: W1036 Variable 'i' ist möglicherweise nicht initialisiert worden

    17 Zeilen, 0.00 Sekunden, 11016 Byte-Code, 12156 Byte-Daten.
    Erstellen des Projekts MyProject.dproj beendet.

现在我想修剪一下

MyProject.dpr(10) Hinweis: H2077 Auf 'i' zugewiesener Wert wird niemals benutzt
    MyProject.dpr(9) Warnung: W1036 Variable 'i' ist möglicherweise nicht initialisiert worden

是否有任何FileLoggerParameters可以做到这一点?

更新:由于似乎没有办法使MSBuild能够完成我想要的工作,所以我最终编写了一个Delphi程序来格式化MSBuild输出以符合我的需要。

我通常使用grep,sed和awk做这样的事情。

尝试msbuild /v:m 这会将msbuild命令行的详细程度设置为“最小”。 它可能会给您一些您想要的东西。 参见“ msbuild /?” 寻求帮助。

许多命令行工具都有一个'/ nologo'选项,可以提供帮助。 也许您可以将其传递给dcc。 也许您需要编辑.targets文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM