命令行工具 (CLI)
你可以通过命令行(或终端)来运行 Stylelint。示例如下:
npx stylelint "**/*.css"
You should include quotation marks around file globs.
If you are using npm scripts, you'll need to escape the quotes:
{
"scripts": {
"lint": "stylelint \"**/*.css\""
}
}
通过 npx stylelint --help
命令来输出命令行工具(CLI)的文档。
参数
命令行工具(CLI)可以接受以下参数:
--allow-empty-input, --aei
当 glob 模式匹配不到任何文件时,进程将退出且不抛出任何错误。 了解更多信息。
--cache-location
为缓存指定一个文件或目录。详细信息见这里。
--cache-strategy
Strategy for the cache to use for detecting changed files. Can be either "metadata" or "content". More info.
--cache
存储经过处理过的文件,以便 Stylelint 仅对已更改的文件进行操作。默认情况下,缓存的位置是 process.cwd()
目录下的 ./.stylelintcache
目录。详细信息见这里。
--color, --no-color
强制启用/禁用彩色输出。Force enabling/disabling of color.
--config-basedir
Absolute path to the directory that relative paths defining "extends", "plugins", and "customSyntax" are relative to. Only necessary if these values are relative paths. More info.
--config, -c
配置文件 的路径,支持 JSON、YAML 或 JS 格式。详细信息见这里。
--custom-syntax
列出你的代码中所包含的自定义语法。详细信息见这里。
--disable-default-ignores, --di
Disable the default ignores. Stylelint will not automatically ignore the contents of node_modules
. More info.
--fix
Automatically fix, where possible, problems reported by rules. More info.
--formatter, -f
| --custom-formatter
Specify the formatter to format your results. More info.
--globbyOptions, --go
Options in JSON format passed to globby. More info.
--ignore-disables, --id
Ignore stylelint-disable
(e.g. /* stylelint-disable block-no-empty */
) comments. More info.
--ignore-path, -i
Path to a file containing patterns that describe files to ignore. The path can be absolute or relative to process.cwd()
. You can repeat the option to provide multiple paths. By default, Stylelint looks for .stylelintignore
in process.cwd()
. More info.
--ignore-pattern, --ip
Pattern of files to ignore (in addition to those in .stylelintignore
).
--max-warnings, --mw
Set a limit to the number of warnings accepted. More info.
--output-file, -o
Path of file to write a report. Stylelint outputs the report to the specified filename
in addition to process.stderr
.
--print-config
Print the configuration for the given input path. Globs are unsupported.
--quiet, -q
Only register problems for rules with an "error"-level severity (ignore "warning"-level). More info.
--quiet-deprecation-warnings
Ignore deprecation warnings. More info.
--report-descriptionless-disables, --rdd
Produce a report of the stylelint-disable
comments without a description. More info.
--report-invalid-scope-disables, --risd
Produce a report of the stylelint-disable
comments that used for rules that don't exist within the configuration object. More info.
--report-needless-disables, --rd
Produce a report to clean up your codebase, keeping only the stylelint-disable
comments that serve a purpose. More info.
--stdin-filename
A filename to assign the input. More info.
--stdin
Accept stdin input even if it is empty.
--version, -v
Show the currently installed version of Stylelint.
Usage examples
The CLI expects input as either a file glob or process.stdin
. It outputs formatted results into process.stderr
.
You should include quotation marks around file globs.
Example A - recursive
Recursively linting all .css
files in the foo
directory:
stylelint "foo/**/*.css"
Example B - multiple file extensions
Linting all .css
, .scss
, and .sass
files:
stylelint "**/*.{css,scss,sass}"
Example C - stdin
Linting stdin
:
echo "a { color: pink; }" | stylelint
Example D - negation
Linting all .css
files except those within docker
subfolders, using negation in the input glob:
stylelint "**/*.css" "!**/docker/**"
Example E - caching
Caching processed .scss
files foo
directory:
stylelint "foo/**/*.scss" --cache --cache-location "/Users/user/.stylelintcache/"
Example F - writing a report
Linting all .css
files in the foo
directory, then writing the output to myTestReport.txt
:
stylelint "foo/*.css" --output-file myTestReport.txt
Example G - specifying a config
Using bar/mySpecialConfig.json
as config to lint all .css
files in the foo
directory and any of its subdirectories:
stylelint "foo/**/*.css" --config bar/mySpecialConfig.json
Example H - using a custom syntax
Recursively linting all .css
files in the foo
directory using a custom syntax:
stylelint "foo/**/*.css" --custom-syntax path/to/my-custom-syntax.js
Example I - print on success
Ensure output on successful runs:
stylelint -f verbose "foo/**/*.css"
Example J - print a config
Print a configuration used for the given input file:
stylelint test.css --print-config
Example K - piping a report to another command
Use a report as input for another command through piping:
stylelint -f json "*.css" 2>&1 | jq '[.[] | .warnings | length] | add'
退出码
命令行工具(CLI)进程退出时会返回以下退出码(exit codes):
1
- fatal error2
- lint problem64
- invalid CLI usage78
- invalid configuration file