首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用CSSLint?

如何使用CSSLint?
EN

Stack Overflow用户
提问于 2016-07-11 08:15:20
回答 1查看 212关注 0票数 0

我找到了一些命令行参数来以xml格式运行CSSLint报告。它在运行命令提示符时运行良好。

参数:

格式= csslint "{SourceDir}\bootstrap.css“> "C:\temp\csslint.xml”

我想通过C#应用程序来执行它。我试过下面的代码。

代码语言:javascript
复制
Process process = new Process()
{
    StartInfo =
    {
        FileName = "cmd.exe",
        Arguments = "csslint --format=csslint-xml " + @"""{SourceDir}\bootstrap.css""" + @" > ""C:\Temp\CssLint.xml""",
        UseShellExecute = false,
        RedirectStandardOutput = true,
        CreateNoWindow = true,
    }
};

process.Start();
process.WaitForExit();

但这是行不通的。对于这个问题,我能有一个解决办法或想法吗?

此外,是否有任何方法为指定目录生成CSSLint报告?我想给出目录路径,而不是文件名。

EN

回答 1

Stack Overflow用户

发布于 2016-07-11 08:17:54

您需要将/K/C添加到cmd以执行作为参数传递的进程,因此:

代码语言:javascript
复制
Arguments = "/C csslint --format=csslint-xml " + @"""{SourceDir}\bootstrap.css""" + @" > ""C:\Temp\CssLint.xml""",

来自文献资料

选项/C运行命令,然后终止 /K运行命令,然后返回到CMD提示符。这对于测试、检查变量非常有用。

一个警告..。管道(命令行的> "C:\temp\csslint.xml"部分)不是参数,而是重定向。

如果您要从应用程序重定向stdout ( RedirectStandardOutput = true),您可以直接从C#捕获它,不需要像您正在尝试的那样将其输送到文件中:您需要处理StartWaitForExit调用之间的Process.OutputDataReceived事件,或者从Process.StandardOutput读取。

至于您的第二个问题,csslint CLI允许传入目录而不是文件。

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

https://stackoverflow.com/questions/38302150

复制
相关文章

相似问题

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