Справочник по интерфейсу командной строки
Интерфейс командной строки (CLI) ESLint позволяет запускать проверку кода из терминала. CLI поддерживает множество параметров, с помощью которых можно настроить ESLint.
Запуск CLI
Для установки ESLint требуется Node.js. Чтобы установить ESLint, следуйте инструкциям в руководстве по началу работы.
Большинство пользователей запускают ESLint из командной строки с помощью npx, например:
npm
npx eslint [options] [file|dir|glob]*
yarn
yarn dlx eslint [options] [file|dir|glob]*
pnpm
pnpm dlx eslint [options] [file|dir|glob]*
bun
bunx eslint [options] [file|dir|glob]*
Например:
npm
# Run on two files
npx eslint file1.js file2.js
yarn
# Run on two files
yarn dlx eslint file1.js file2.js
pnpm
# Run on two files
pnpm dlx eslint file1.js file2.js
bun
# Run on two files
bunx eslint file1.js file2.js
или
npm
# Run on multiple files
npx eslint lib/**
yarn
# Run on multiple files
yarn dlx eslint lib/**
pnpm
# Run on multiple files
pnpm dlx eslint lib/**
bun
# Run on multiple files
bunx eslint lib/**
Обратите внимание: если передать в качестве параметра шаблон glob, его развернёт оболочка командной строки. Результаты развертывания могут различаться в зависимости от используемой оболочки и её конфигурации. Если вы хотите использовать синтаксис node glob, параметр нужно заключить в кавычки (используйте двойные кавычки, если команда должна запускаться в Windows), например:
npm
npx eslint "lib/**"
yarn
yarn dlx eslint "lib/**"
pnpm
pnpm dlx eslint "lib/**"
bun
bunx eslint "lib/**"
Можно также не указывать аргументы с файлами — в этом случае ESLint использует .. Например, следующие две команды выполняют одну и ту же операцию:
npm
npx eslint .
yarn
yarn dlx eslint .
pnpm
pnpm dlx eslint .
bun
bunx eslint .
npm
npx eslint
yarn
yarn dlx eslint
pnpm
pnpm dlx eslint
bun
bunx eslint
Примечание: для запуска ESLint можно также использовать другие менеджеры пакетов, например Yarn или pnpm. Для pnpm используйте pnpm dlx eslint, а для Yarn — yarn dlx eslint.
Передача нескольких значений параметру
Параметры, принимающие несколько значений, можно указывать повторно или передавать список значений, разделённых запятыми (кроме --ignore-pattern, который не поддерживает второй способ).
Примеры параметров, принимающих несколько значений:
npm
npx eslint --global describe --global it tests/
yarn
yarn dlx eslint --global describe --global it tests/
pnpm
pnpm dlx eslint --global describe --global it tests/
bun
bunx eslint --global describe --global it tests/
ИЛИ
npm
npx eslint --global describe,it tests/
yarn
yarn dlx eslint --global describe,it tests/
pnpm
pnpm dlx eslint --global describe,it tests/
bun
bunx eslint --global describe,it tests/
Параметры
Просмотреть все параметры CLI можно, выполнив npx eslint -h.
eslint [options] file.js [file.js] [dir]
Basic configuration:
--no-config-lookup Disable look up for eslint.config.js
-c, --config path::String Use this configuration instead of eslint.config.js, eslint.config.mjs, or eslint.config.cjs
--inspect-config Open the config inspector with the current configuration
--ext [String] Specify additional file extensions to lint
--global [String] Define global variables
--parser String Specify the parser to be used
--parser-options Object Specify parser options
Specify Rules and Plugins:
--plugin [String] Specify plugins
--rule Object Specify rules
Fix Problems:
--fix Automatically fix problems
--fix-dry-run Automatically fix problems without saving the changes to the file system
--fix-type Array Specify the types of fixes to apply (directive, problem, suggestion, layout)
Ignore Files:
--no-ignore Disable use of ignore files and patterns
--ignore-pattern [String] Patterns of files to ignore
Use stdin:
--stdin Lint code provided on <STDIN> - default: false
--stdin-filename String Specify filename to process STDIN as
Handle Warnings:
--quiet Report errors only - default: false
--max-warnings Int Number of warnings to trigger nonzero exit code - default: -1
Output:
-o, --output-file path::String Specify file to write report to
-f, --format String Use a specific output format - default: stylish
--color, --no-color Force enabling/disabling of color
Inline configuration comments:
--no-inline-config Prevent comments from changing config or rules
--report-unused-disable-directives Adds reported errors for unused eslint-disable and eslint-enable directives
--report-unused-disable-directives-severity String Chooses severity level for reporting unused eslint-disable and eslint-enable directives - either: off, warn, error, 0, 1, or 2
--report-unused-inline-configs String Adds reported errors for unused eslint inline config comments - either: off, warn, error, 0, 1, or 2
Caching:
--cache Only check changed files - default: false
--cache-file path::String Path to the cache file. Deprecated: use --cache-location - default: .eslintcache
--cache-location path::String Path to the cache file or directory
--cache-strategy String Strategy to use for detecting changed files in the cache - either: metadata or content - default: metadata
Suppressing Violations:
--suppress-all Suppress all violations - default: false
--suppress-rule [String] Suppress specific rules
--suppressions-location path::String Specify the location of the suppressions file
--prune-suppressions Prune unused suppressions - default: false
--pass-on-unpruned-suppressions Ignore unused suppressions - default: false
Miscellaneous:
--init Run config initialization wizard - default: false
--env-info Output execution environment information - default: false
--no-error-on-unmatched-pattern Prevent errors when pattern is unmatched
--exit-on-fatal-error Exit with exit code 2 in case of fatal error - default: false
--no-warn-ignored Suppress warnings when the file list includes ignored files
--pass-on-no-patterns Exit with exit code 0 in case no file patterns are passed
--debug Output debugging information
-h, --help Show help
-v, --version Output the version number
--print-config path::String Print the configuration for the given file
--stats Add statistics to the lint report - default: false
--flag [String] Enable a feature flag
--mcp Start the ESLint MCP server
--concurrency Int|String Number of linting threads, auto to choose automatically, off for no multithreading - default: off
Основная конфигурация
--no-config-lookup
Отключает использование конфигурации из файлов.
- Тип аргумента: без аргумента.
Пример использования --no-config-lookup
npm
npx eslint --no-config-lookup file.js
yarn
yarn dlx eslint --no-config-lookup file.js
pnpm
pnpm dlx eslint --no-config-lookup file.js
bun
bunx eslint --no-config-lookup file.js
-c, --config
Этот параметр позволяет указать дополнительный файл конфигурации ESLint (подробнее см. раздел Настройка ESLint).
- Тип аргумента: строка. Путь к файлу.
- Несколько аргументов: нет
Пример использования -c, --config
npm
npx eslint -c ~/my.eslint.config.js file.js
yarn
yarn dlx eslint -c ~/my.eslint.config.js file.js
pnpm
pnpm dlx eslint -c ~/my.eslint.config.js file.js
bun
bunx eslint -c ~/my.eslint.config.js file.js
В этом примере используется файл конфигурации ~/my.eslint.config.js вместо поиска файла eslint.config.js.
--inspect-config
Этот параметр запускает npx @eslint/config-inspector@latest для открытия инспектора конфигурации. С его помощью можно лучше понять, что делает конфигурация и к каким файлам она применяется. При использовании этого флага CLI не выполняет проверку кода.
- Тип аргумента: без аргумента.
Пример использования --inspect-config
npm
npx eslint --inspect-config
yarn
yarn dlx eslint --inspect-config
pnpm
pnpm dlx eslint --inspect-config
bun
bunx eslint --inspect-config
--ext
Этот параметр позволяет указать дополнительные расширения файлов для проверки.
- Тип аргумента: строка. Расширение файла.
- Несколько аргументов: да
-
Значение по умолчанию: по умолчанию ESLint проверяет файлы с расширениями
.js,.mjs,.cjs, а также дополнительные расширения, указанные в файле конфигурации.
Этот параметр в первую очередь предназначен для использования вместе с параметром --no-config-lookup, поскольку в этом случае файл конфигурации, в котором можно было бы указать дополнительные расширения, отсутствует.
Пример использования --ext
npm
# Include .ts files
npx eslint . --ext .ts
yarn
# Include .ts files
yarn dlx eslint . --ext .ts
pnpm
# Include .ts files
pnpm dlx eslint . --ext .ts
bun
# Include .ts files
bunx eslint . --ext .ts
npm
# Include .ts and .tsx files
npx eslint . --ext .ts --ext .tsx
yarn
# Include .ts and .tsx files
yarn dlx eslint . --ext .ts --ext .tsx
pnpm
# Include .ts and .tsx files
pnpm dlx eslint . --ext .ts --ext .tsx
bun
# Include .ts and .tsx files
bunx eslint . --ext .ts --ext .tsx
npm
# Also include .ts and .tsx files
npx eslint . --ext .ts,.tsx
yarn
# Also include .ts and .tsx files
yarn dlx eslint . --ext .ts,.tsx
pnpm
# Also include .ts and .tsx files
pnpm dlx eslint . --ext .ts,.tsx
bun
# Also include .ts and .tsx files
bunx eslint . --ext .ts,.tsx
--global
Этот параметр определяет глобальные переменные, чтобы правило no-undef не считало их неопределёнными.
-
Тип аргумента: строка. Имя глобальной переменной. По умолчанию все указанные глобальные переменные считаются доступными только для чтения, но если добавить
:trueк имени переменной,no-undefтакже разрешит запись. - Несколько аргументов: да
Пример использования --global
npm
npx eslint --global require,exports:true file.js
yarn
yarn dlx eslint --global require,exports:true file.js
pnpm
pnpm dlx eslint --global require,exports:true file.js
bun
bunx eslint --global require,exports:true file.js
npm
npx eslint --global require --global exports:true
yarn
yarn dlx eslint --global require --global exports:true
pnpm
pnpm dlx eslint --global require --global exports:true
bun
bunx eslint --global require --global exports:true
--parser
Этот параметр позволяет указать анализатор, который будет использовать ESLint.
- Тип аргумента: строка. Анализатор, который будет использовать ESLint.
- Несколько аргументов: нет
-
Значение по умолчанию:
espree
Пример использования --parser
npm
# Use TypeScript ESLint parser
npx eslint --parser @typescript-eslint/parser file.ts
yarn
# Use TypeScript ESLint parser
yarn dlx eslint --parser @typescript-eslint/parser file.ts
pnpm
# Use TypeScript ESLint parser
pnpm dlx eslint --parser @typescript-eslint/parser file.ts
bun
# Use TypeScript ESLint parser
bunx eslint --parser @typescript-eslint/parser file.ts
--parser-options
Этот параметр позволяет задать параметры анализатора, который будет использовать ESLint. Доступные параметры зависят от используемого анализатора.
-
Тип аргумента: пара «ключ/значение», разделённая двоеточием (
:). - Несколько аргументов: да
Пример использования --parser-options
npm
# fails with a parsing error
echo '3 ** 4' | npx eslint --stdin --parser-options ecmaVersion:6
yarn
# fails with a parsing error
echo '3 ** 4' | yarn dlx eslint --stdin --parser-options ecmaVersion:6
pnpm
# fails with a parsing error
echo '3 ** 4' | pnpm dlx eslint --stdin --parser-options ecmaVersion:6
bun
# fails with a parsing error
echo '3 ** 4' | bunx eslint --stdin --parser-options ecmaVersion:6
npm
# succeeds, yay!
echo '3 ** 4' | npx eslint --stdin --parser-options ecmaVersion:7
yarn
# succeeds, yay!
echo '3 ** 4' | yarn dlx eslint --stdin --parser-options ecmaVersion:7
pnpm
# succeeds, yay!
echo '3 ** 4' | pnpm dlx eslint --stdin --parser-options ecmaVersion:7
bun
# succeeds, yay!
echo '3 ** 4' | bunx eslint --stdin --parser-options ecmaVersion:7
Указание правил и плагинов
--plugin
Этот параметр указывает плагин для загрузки.
-
Тип аргумента: строка. Название плагина. При желании из названия плагина можно опустить префикс
eslint-plugin-. - Несколько аргументов: да
Перед использованием плагин необходимо установить с помощью npm.
Пример использования --plugin
npm
npx eslint --plugin jquery file.js
yarn
yarn dlx eslint --plugin jquery file.js
pnpm
pnpm dlx eslint --plugin jquery file.js
bun
bunx eslint --plugin jquery file.js
npm
npx eslint --plugin eslint-plugin-mocha file.js
yarn
yarn dlx eslint --plugin eslint-plugin-mocha file.js
pnpm
pnpm dlx eslint --plugin eslint-plugin-mocha file.js
bun
bunx eslint --plugin eslint-plugin-mocha file.js
--rule
Этот параметр указывает используемые правила.
- Тип аргумента: правила и их настройки в формате levn.
- Несколько аргументов: да
Эти правила объединяются с правилами, заданными в файлах конфигурации. Если правило определено в плагине, перед его идентификатором нужно указать имя плагина и /.
Чтобы игнорировать правила из файлов конфигурации и запускать только правила, указанные в командной строке, используйте флаг --rule вместе с флагом --no-config-lookup.
Пример использования --rule
npm
# Apply single rule
npx eslint --rule 'quotes: [error, double]'
yarn
# Apply single rule
yarn dlx eslint --rule 'quotes: [error, double]'
pnpm
# Apply single rule
pnpm dlx eslint --rule 'quotes: [error, double]'
bun
# Apply single rule
bunx eslint --rule 'quotes: [error, double]'
npm
# Apply multiple rules
npx eslint --rule 'guard-for-in: error' --rule 'brace-style: [error, 1tbs]'
yarn
# Apply multiple rules
yarn dlx eslint --rule 'guard-for-in: error' --rule 'brace-style: [error, 1tbs]'
pnpm
# Apply multiple rules
pnpm dlx eslint --rule 'guard-for-in: error' --rule 'brace-style: [error, 1tbs]'
bun
# Apply multiple rules
bunx eslint --rule 'guard-for-in: error' --rule 'brace-style: [error, 1tbs]'
npm
# Apply rule from jquery plugin
npx eslint --rule 'jquery/dollar-sign: error'
yarn
# Apply rule from jquery plugin
yarn dlx eslint --rule 'jquery/dollar-sign: error'
pnpm
# Apply rule from jquery plugin
pnpm dlx eslint --rule 'jquery/dollar-sign: error'
bun
# Apply rule from jquery plugin
bunx eslint --rule 'jquery/dollar-sign: error'
npm
# Only apply rule from the command line
npx eslint --rule 'quotes: [error, double]' --no-config-lookup
yarn
# Only apply rule from the command line
yarn dlx eslint --rule 'quotes: [error, double]' --no-config-lookup
pnpm
# Only apply rule from the command line
pnpm dlx eslint --rule 'quotes: [error, double]' --no-config-lookup
bun
# Only apply rule from the command line
bunx eslint --rule 'quotes: [error, double]' --no-config-lookup
Исправление проблем
--fix
Этот параметр указывает ESLint попытаться исправить как можно больше проблем. Исправления вносятся непосредственно в файлы, а в вывод попадают только оставшиеся неисправленные проблемы.
- Тип аргумента: без аргумента.
Не все проблемы можно исправить с помощью этого параметра. Он не работает в следующих ситуациях:
- При передаче кода в ESLint через конвейер этот параметр вызывает ошибку.
- Этот параметр не влияет на код, обрабатываемый процессором, если только процессор не поддерживает автоматическое исправление.
Чтобы исправить код из stdin или получить исправления, не записывая их в файл, используйте параметр --fix-dry-run.
Пример --fix
npm
npx eslint --fix file.js
yarn
yarn dlx eslint --fix file.js
pnpm
pnpm dlx eslint --fix file.js
bun
bunx eslint --fix file.js
--fix-dry-run
Этот параметр действует так же, как --fix, но исправления не сохраняются в файловой системе. Поскольку форматтер по умолчанию не выводит исправленный код, для получения исправлений необходимо использовать другой форматтер (например, --format json).
- Тип аргумента: без аргумента.
Это позволяет исправлять код из stdin при использовании флага --stdin.
Этот флаг может быть полезен для интеграций (например, плагинов редактора), которым нужно автоматически исправлять текст из командной строки, не сохраняя его в файловой системе.
Пример --fix-dry-run
npm
getSomeText | npx eslint --stdin --fix-dry-run --format json
yarn
getSomeText | yarn dlx eslint --stdin --fix-dry-run --format json
pnpm
getSomeText | pnpm dlx eslint --stdin --fix-dry-run --format json
bun
getSomeText | bunx eslint --stdin --fix-dry-run --format json
--fix-type
Этот параметр позволяет указать тип исправлений, которые нужно применить при использовании --fix или --fix-dry-run.
-
Тип аргумента: строка. Один из следующих типов исправлений:
-
problem— исправить потенциальные ошибки в коде -
suggestion— применить исправления, улучшающие код -
layout— применить исправления, не меняющие структуру программы (AST) -
directive— применить исправления к встроенным директивам, например// eslint-disable
-
- Несколько аргументов: да
Этот параметр пригодится, если вы используете другую программу для форматирования кода, но хотите, чтобы ESLint применял исправления других типов.
Пример --fix-type
npm
npx eslint --fix --fix-type suggestion .
yarn
yarn dlx eslint --fix --fix-type suggestion .
pnpm
pnpm dlx eslint --fix --fix-type suggestion .
bun
bunx eslint --fix --fix-type suggestion .
npm
npx eslint --fix --fix-type suggestion --fix-type problem .
yarn
yarn dlx eslint --fix --fix-type suggestion --fix-type problem .
pnpm
pnpm dlx eslint --fix --fix-type suggestion --fix-type problem .
bun
bunx eslint --fix --fix-type suggestion --fix-type problem .
npm
npx eslint --fix --fix-type suggestion,layout .
yarn
yarn dlx eslint --fix --fix-type suggestion,layout .
pnpm
pnpm dlx eslint --fix --fix-type suggestion,layout .
bun
bunx eslint --fix --fix-type suggestion,layout .
Игнорирование файлов
--no-ignore
Отключает исключение файлов с помощью флагов --ignore-pattern и свойства ignores в конфигурации.
- Тип аргумента: без аргумента.
Пример --no-ignore
npm
npx eslint --no-ignore file.js
yarn
yarn dlx eslint --no-ignore file.js
pnpm
pnpm dlx eslint --no-ignore file.js
bun
bunx eslint --no-ignore file.js
--ignore-pattern
Этот параметр позволяет указать шаблоны файлов, которые нужно игнорировать.
-
Тип аргумента: строка. Поддерживается тот же синтаксис, что и для шаблонов
ignores, использующих синтаксис minimatch. Заключайте шаблоны в кавычки, чтобы избежать интерпретации шаблонов glob командной оболочкой. - Несколько аргументов: да
Пример --ignore-pattern
npm
npx eslint --ignore-pattern "/lib/" --ignore-pattern "/src/vendor/*" .
yarn
yarn dlx eslint --ignore-pattern "/lib/" --ignore-pattern "/src/vendor/*" .
pnpm
pnpm dlx eslint --ignore-pattern "/lib/" --ignore-pattern "/src/vendor/*" .
bun
bunx eslint --ignore-pattern "/lib/" --ignore-pattern "/src/vendor/*" .
Использование stdin
--stdin
Этот параметр указывает ESLint считывать и проверять исходный код из STDIN, а не из файлов. С его помощью можно передавать код в ESLint через конвейер.
- Тип аргумента: без аргумента.
Пример --stdin
npm
cat myFile.js | npx eslint --stdin
yarn
cat myFile.js | yarn dlx eslint --stdin
pnpm
cat myFile.js | pnpm dlx eslint --stdin
bun
cat myFile.js | bunx eslint --stdin
--stdin-filename
Этот параметр позволяет указать имя файла, под которым следует обработать STDIN.
- Тип аргумента: строка. Путь к файлу.
- Несколько аргументов: нет
Это полезно при обработке файлов из STDIN, если у вас есть правила, зависящие от имени файла.
Пример --stdin-filename
npm
cat myFile.js | npx eslint --stdin --stdin-filename myfile.js
yarn
cat myFile.js | yarn dlx eslint --stdin --stdin-filename myfile.js
pnpm
cat myFile.js | pnpm dlx eslint --stdin --stdin-filename myfile.js
bun
cat myFile.js | bunx eslint --stdin --stdin-filename myfile.js
Обработка предупреждений
--quiet
Этот параметр позволяет отключить вывод предупреждений и запуск правил, настроенных на предупреждение. Если включить этот параметр, ESLint будет выводить только ошибки и запускать только правила, настроенные на ошибку.
- Тип аргумента: без аргумента.
Пример --quiet
npm
npx eslint --quiet file.js
yarn
yarn dlx eslint --quiet file.js
pnpm
pnpm dlx eslint --quiet file.js
bun
bunx eslint --quiet file.js
--max-warnings
Этот параметр позволяет задать порог предупреждений. Его можно использовать, чтобы ESLint завершал работу с ошибкой, если в проекте слишком много нарушений правил с уровнем предупреждения.
-
Тип аргумента: целое число. Максимальное допустимое количество предупреждений. Чтобы отключить такое поведение, не используйте этот параметр или укажите
-1в качестве аргумента. - Несколько аргументов: нет
Обычно, если ESLint запускается и не находит ошибок (только предупреждения), он завершает работу с кодом успешного завершения. Однако если указан --max-warnings и общее количество предупреждений превышает заданный порог, ESLint завершает работу с ошибкой.
Пример --max-warnings
npm
npx eslint --max-warnings 10 file.js
yarn
yarn dlx eslint --max-warnings 10 file.js
pnpm
pnpm dlx eslint --max-warnings 10 file.js
bun
bunx eslint --max-warnings 10 file.js
Вывод
-o, --output-file
Записывает результаты проверки в указанный файл.
- Тип аргумента: строка. Путь к файлу.
- Несколько аргументов: нет
Пример -o, --output-file
npm
npx eslint -o ./test/test.html
yarn
yarn dlx eslint -o ./test/test.html
pnpm
pnpm dlx eslint -o ./test/test.html
bun
bunx eslint -o ./test/test.html
-f, --format
Этот параметр задаёт формат вывода для консоли.
- Тип аргумента: строка. Один из встроенных форматтеров или пользовательский форматтер.
- Несколько аргументов: нет
-
Значение по умолчанию:
stylish
Если используется пользовательский форматтер, определённый в локальном файле, можно указать путь к этому файлу.
Форматтер, установленный через npm, разрешается как с префиксом eslint-formatter-, так и без него.
При указании заданный формат выводится в консоль. Чтобы сохранить этот вывод в файл, можно выполнить в командной строке следующее:
npm
# Saves the output into the `results.json` file.
npx eslint -f json file.js > results.json
yarn
# Saves the output into the `results.json` file.
yarn dlx eslint -f json file.js > results.json
pnpm
# Saves the output into the `results.json` file.
pnpm dlx eslint -f json file.js > results.json
bun
# Saves the output into the `results.json` file.
bunx eslint -f json file.js > results.json
Пример -f, --format
Используйте встроенный форматтер json:
npm
npx eslint --format json file.js
yarn
yarn dlx eslint --format json file.js
pnpm
pnpm dlx eslint --format json file.js
bun
bunx eslint --format json file.js
Используйте локальный пользовательский форматтер:
npm
npx eslint -f ./customformat.js file.js
yarn
yarn dlx eslint -f ./customformat.js file.js
pnpm
pnpm dlx eslint -f ./customformat.js file.js
bun
bunx eslint -f ./customformat.js file.js
Используйте форматтер, установленный через npm:
npm
npm install eslint-formatter-pretty
yarn
yarn add eslint-formatter-pretty
pnpm
pnpm add eslint-formatter-pretty
bun
bun add eslint-formatter-pretty
Затем выполните одну из следующих команд
npm
npx eslint -f pretty file.js
yarn
yarn dlx eslint -f pretty file.js
pnpm
pnpm dlx eslint -f pretty file.js
bun
bunx eslint -f pretty file.js
или, альтернативно,
npm
npx eslint -f eslint-formatter-pretty file.js
yarn
yarn dlx eslint -f eslint-formatter-pretty file.js
pnpm
pnpm dlx eslint -f eslint-formatter-pretty file.js
bun
bunx eslint -f eslint-formatter-pretty file.js
--color и --no-color
Эти параметры принудительно включают или отключают цветной вывод.
- Тип аргумента: без аргумента.
Эти параметры позволяют переопределить поведение по умолчанию: цветной вывод включён, если не обнаружен TTY, например при передаче eslint через cat или less.
Пример --color и --no-color
npm
npx eslint --color file.js | cat
yarn
yarn dlx eslint --color file.js | cat
pnpm
pnpm dlx eslint --color file.js | cat
bun
bunx eslint --color file.js | cat
npm
npx eslint --no-color file.js
yarn
yarn dlx eslint --no-color file.js
pnpm
pnpm dlx eslint --no-color file.js
bun
bunx eslint --no-color file.js
Встроенные комментарии конфигурации
--no-inline-config
Этот параметр не позволяет встроенным комментариям, например /*eslint-disable*/ или /*global foo*/, оказывать какое-либо влияние.
- Тип аргумента: без аргумента.
Это позволяет задать конфигурацию ESLint, которую не могут изменить файлы. Игнорируются все встроенные комментарии конфигурации, например:
/*eslint-disable*//*eslint-enable*//*global*//*eslint*/// eslint-disable-line// eslint-disable-next-line
Пример --no-inline-config
npm
npx eslint --no-inline-config file.js
yarn
yarn dlx eslint --no-inline-config file.js
pnpm
pnpm dlx eslint --no-inline-config file.js
bun
bunx eslint --no-inline-config file.js
--report-unused-disable-directives
Этот параметр заставляет ESLint сообщать о комментариях-директивах, например // eslint-disable-line, если в этой строке в любом случае не было бы ошибок.
- Тип аргумента: без аргумента.
Это может помочь предотвратить неожиданное подавление будущих ошибок: достаточно удалить устаревшие комментарии eslint-disable и eslint-enable, которые больше не применимы.
Пример --report-unused-disable-directives
npm
npx eslint --report-unused-disable-directives file.js
yarn
yarn dlx eslint --report-unused-disable-directives file.js
pnpm
pnpm dlx eslint --report-unused-disable-directives file.js
bun
bunx eslint --report-unused-disable-directives file.js
--report-unused-disable-directives-severity
То же, что и --report-unused-disable-directives, но позволяет указать уровень серьезности (error, warn, off) сообщаемых ошибок. Одновременно можно использовать только один из этих двух параметров.
-
Тип аргумента: строка. Одно из следующих значений:
-
off(или0) -
warn(или1) -
error(или2)
-
- Несколько аргументов: нет
-
Значение по умолчанию: по умолчанию используется параметр конфигурации
linterOptions.reportUnusedDisableDirectives(значение по умолчанию —"warn").
Пример --report-unused-disable-directives-severity
npm
npx eslint --report-unused-disable-directives-severity warn file.js
yarn
yarn dlx eslint --report-unused-disable-directives-severity warn file.js
pnpm
pnpm dlx eslint --report-unused-disable-directives-severity warn file.js
bun
bunx eslint --report-unused-disable-directives-severity warn file.js
--report-unused-inline-configs
Этот параметр заставляет ESLint сообщать о встроенных комментариях конфигурации, например /* eslint rule-name: "error" */, если уровень серьезности правила и любые его параметры совпадают с уже настроенными.
-
Тип аргумента: строка. Одно из следующих значений:
-
off(или0) -
warn(или1) -
error(или2)
-
- Несколько аргументов: нет
-
Значение по умолчанию: по умолчанию используется параметр конфигурации
linterOptions.reportUnusedInlineConfigs(значение по умолчанию —"off").
Это может быть полезно для поддержания чистоты файлов и избавления от вводящего в заблуждение лишнего содержимого. Встроенные комментарии конфигурации предназначены для изменения поведения ESLint: если они ничего не меняют, нет причин оставлять их в коде.
Пример --report-unused-inline-configs
npx eslint --report-unused-inline-configs error file.js
Кэширование
--cache
Сохраняет сведения об обработанных файлах, чтобы выполнять проверку только для измененных файлов. Включение этого параметра может значительно повысить производительность ESLint, поскольку проверяться будут только измененные файлы. По умолчанию кэш хранится в .eslintcache.
- Тип аргумента: аргумент не требуется.
Если запустить ESLint с --cache, а затем без --cache, файл .eslintcache будет удален. Это необходимо, поскольку результаты проверки могут измениться, из-за чего .eslintcache станет недействительным. Если вы хотите самостоятельно контролировать момент удаления файла кэша, используйте --cache-location, чтобы указать другое расположение файла кэша.
Файлы, автоматически исправленные, не помещаются в кэш. При последующей проверке, которая не приводит к автоматическому исправлению, файл будет помещен в кэш.
Пример --cache
npm
npx eslint --cache file.js
yarn
yarn dlx eslint --cache file.js
pnpm
pnpm dlx eslint --cache file.js
bun
bunx eslint --cache file.js
--cache-file
Устарело: используйте вместо этого --cache-location.
Путь к файлу кэша. Если путь не указан, используется .eslintcache. Файл создается в каталоге, из которого выполняется команда eslint.
--cache-location
Укажите путь к расположению кэша. Это может быть файл или каталог.
-
Тип аргумента: строка. Путь к файлу или каталогу. Если указан каталог, файл кэша создается в указанной папке. Имя файла определяется на основе хеша текущего рабочего каталога, например:
.cache_hashOfCWD. - Несколько аргументов: нет
-
Значение по умолчанию: если расположение не указано, используется
.eslintcache. Файл создается в каталоге, из которого выполняется командаeslint.
Если каталог для кэша не существует, не забудьте добавить завершающий символ / в системах *nix или \ в Windows. В противном случае путь будет считаться путем к файлу.
Пример --cache-location
npm
npx eslint "src/**/*.js" --cache --cache-location "/Users/user/.eslintcache/"
yarn
yarn dlx eslint "src/**/*.js" --cache --cache-location "/Users/user/.eslintcache/"
pnpm
pnpm dlx eslint "src/**/*.js" --cache --cache-location "/Users/user/.eslintcache/"
bun
bunx eslint "src/**/*.js" --cache --cache-location "/Users/user/.eslintcache/"
--cache-strategy
Стратегия кэширования для обнаружения измененных файлов.
-
Тип аргумента: строка. Одно из следующих значений:
metadatacontent
- Несколько аргументов: нет
-
Значение по умолчанию:
metadata
Стратегия content может быть полезна в случаях, когда время изменения файлов меняется, даже если их содержимое осталось прежним. Например, это может происходить при выполнении операций git, таких как git clone, поскольку git не отслеживает время изменения файлов.
Пример --cache-strategy
npm
npx eslint "src/**/*.js" --cache --cache-strategy content
yarn
yarn dlx eslint "src/**/*.js" --cache --cache-strategy content
pnpm
pnpm dlx eslint "src/**/*.js" --cache --cache-strategy content
bun
bunx eslint "src/**/*.js" --cache --cache-strategy content
Подавление нарушений
--suppress-all
Подавляет существующие нарушения, чтобы они не отображались при последующих запусках. Это позволяет включить одно или несколько правил линтинга и получать уведомления только о новых нарушениях. По умолчанию подавления сохраняются в eslint-suppressions.json, если другое расположение не задано с помощью --suppressions-location. Файл обновляется с учетом новых подавлений.
- Тип аргумента: аргумент не требуется.
Пример --suppress-all
npm
npx eslint "src/**/*.js" --suppress-all
yarn
yarn dlx eslint "src/**/*.js" --suppress-all
pnpm
pnpm dlx eslint "src/**/*.js" --suppress-all
bun
bunx eslint "src/**/*.js" --suppress-all
--suppress-rule
Подавляет нарушения для определенных правил, чтобы они не отображались при последующих запусках. Как и в случае с --suppress-all, по умолчанию подавления сохраняются в eslint-suppressions.json, если другое расположение не задано с помощью --suppressions-location. Файл обновляется с учетом новых подавлений.
- Тип аргумента: строка. Идентификатор правила.
- Несколько аргументов: да
Пример --suppress-rule
npm
npx eslint "src/**/*.js" --suppress-rule no-console --suppress-rule indent
yarn
yarn dlx eslint "src/**/*.js" --suppress-rule no-console --suppress-rule indent
pnpm
pnpm dlx eslint "src/**/*.js" --suppress-rule no-console --suppress-rule indent
bun
bunx eslint "src/**/*.js" --suppress-rule no-console --suppress-rule indent
--suppressions-location
Укажите путь к расположению файла подавлений. Это может быть файл или каталог.
-
Тип аргумента: строка. Путь к файлу. Если указан каталог, файл кэша создается в указанной папке. Имя файла определяется на основе хеша текущего рабочего каталога, например:
suppressions_hashOfCWD - Несколько аргументов: нет
-
Значение по умолчанию: если расположение не указано, используется
eslint-suppressions.json. Файл создается в каталоге, из которого выполняется командаeslint.
Пример --suppressions-location
npm
npx eslint "src/**/*.js" --suppressions-location ".eslint-suppressions-example.json"
yarn
yarn dlx eslint "src/**/*.js" --suppressions-location ".eslint-suppressions-example.json"
pnpm
pnpm dlx eslint "src/**/*.js" --suppressions-location ".eslint-suppressions-example.json"
bun
bunx eslint "src/**/*.js" --suppressions-location ".eslint-suppressions-example.json"
--prune-suppressions
Удаляет неиспользуемые подавления из файла подавлений. Этот параметр полезен, если вы исправили одно или несколько подавленных нарушений.
- Тип аргумента: аргумент не требуется.
Пример --prune-suppressions
npm
npx eslint "src/**/*.js" --prune-suppressions
yarn
yarn dlx eslint "src/**/*.js" --prune-suppressions
pnpm
pnpm dlx eslint "src/**/*.js" --prune-suppressions
bun
bunx eslint "src/**/*.js" --prune-suppressions
--pass-on-unpruned-suppressions
Игнорирует неиспользуемые подавления. По умолчанию ESLint завершается с кодом выхода 2 и отображает сообщение об ошибке, если в файле подавлений есть неиспользуемые подавления. При использовании этого флага неиспользуемые подавления не влияют на код выхода, и ESLint не сообщает об ошибке из-за неиспользуемых подавлений.
- Тип аргумента: аргумент не требуется.
Пример --pass-on-unpruned-suppressions
npm
npx eslint "src/**/*.js" --pass-on-unpruned-suppressions
yarn
yarn dlx eslint "src/**/*.js" --pass-on-unpruned-suppressions
pnpm
pnpm dlx eslint "src/**/*.js" --pass-on-unpruned-suppressions
bun
bunx eslint "src/**/*.js" --pass-on-unpruned-suppressions
Прочее
--init
Этот параметр запускает npm init @eslint/config, чтобы открыть мастер настройки конфигурации. Он предназначен для помощи новым пользователям в быстром создании файла eslint.config.js путем ответа на несколько вопросов. При использовании этого флага CLI не выполняет линтинг.
- Тип аргумента: аргумент не требуется.
Созданный файл конфигурации помещается в текущий каталог.
Пример --init
npm
npx eslint --init
yarn
yarn dlx eslint --init
pnpm
pnpm dlx eslint --init
bun
bunx eslint --init
--env-info
Этот параметр выводит сведения о среде выполнения, включая версии Node.js и npm, а также локальные и глобальные установки ESLint.
- Тип аргумента: аргумент не требуется.
Команда ESLint может запросить эти сведения, чтобы помочь устранить ошибки. При использовании этого флага CLI не выполняет линтинг.
Пример --env-info
npm
npx eslint --env-info
yarn
yarn dlx eslint --env-info
pnpm
pnpm dlx eslint --env-info
bun
bunx eslint --env-info
--no-error-on-unmatched-pattern
Этот параметр предотвращает появление ошибок, если заключенный в кавычки шаблон glob не соответствует ни одному файлу. Он не предотвращает появление ошибок, если оболочка не может сопоставить шаблон glob.
- Тип аргумента: аргумент не требуется.
Пример --no-error-on-unmatched-pattern
npm
npx eslint --no-error-on-unmatched-pattern --ext .ts "lib/*"
yarn
yarn dlx eslint --no-error-on-unmatched-pattern --ext .ts "lib/*"
pnpm
pnpm dlx eslint --no-error-on-unmatched-pattern --ext .ts "lib/*"
bun
bunx eslint --no-error-on-unmatched-pattern --ext .ts "lib/*"
--exit-on-fatal-error
Этот параметр заставляет ESLint завершаться с кодом выхода 2, если произошла одна или несколько критических ошибок разбора. Без этого параметра ESLint сообщает о критических ошибках разбора как о нарушениях правил.
- Тип аргумента: аргумент не требуется.
Пример --exit-on-fatal-error
npm
npx eslint --exit-on-fatal-error file.js
yarn
yarn dlx eslint --exit-on-fatal-error file.js
pnpm
pnpm dlx eslint --exit-on-fatal-error file.js
bun
bunx eslint --exit-on-fatal-error file.js
--no-warn-ignored
Этот параметр подавляет предупреждения File ignored by default и File ignored because of a matching ignore pattern, когда явно передается имя файла, который игнорируется. Он полезен в сочетании с --max-warnings 0, поскольку предотвращает завершение с кодом 1 из-за упомянутого предупреждения.
- Тип аргумента: аргумент не требуется.
Пример --no-warn-ignored
npm
npx eslint --no-warn-ignored --max-warnings 0 ignored-file.js
yarn
yarn dlx eslint --no-warn-ignored --max-warnings 0 ignored-file.js
pnpm
pnpm dlx eslint --no-warn-ignored --max-warnings 0 ignored-file.js
bun
bunx eslint --no-warn-ignored --max-warnings 0 ignored-file.js
--pass-on-no-patterns
Этот параметр позволяет ESLint завершиться с кодом 0, если шаблоны файлов или каталогов не указаны. Без этого параметра ESLint предполагает, что в качестве шаблона следует использовать ..
- Тип аргумента: аргумент не требуется.
Пример --pass-on-no-patterns
npm
npx eslint --pass-on-no-patterns
yarn
yarn dlx eslint --pass-on-no-patterns
pnpm
pnpm dlx eslint --pass-on-no-patterns
bun
bunx eslint --pass-on-no-patterns
--debug
Этот параметр выводит отладочную информацию в консоль. Добавьте этот флаг в команду ESLint, чтобы получать дополнительные отладочные сведения во время ее выполнения.
- Тип аргумента: аргумент не требуется.
Эти сведения полезны, если вы столкнулись с проблемой и не можете определить ее причину. Команда ESLint может запросить эту отладочную информацию, чтобы помочь устранить ошибки.
Пример --debug
npm
npx eslint --debug test.js
yarn
yarn dlx eslint --debug test.js
pnpm
pnpm dlx eslint --debug test.js
bun
bunx eslint --debug test.js
-h, --help
Этот параметр выводит справочное меню со всеми доступными параметрами. При его указании все остальные параметры игнорируются. При использовании этого флага CLI не выполняет линтинг.
- Тип аргумента: аргумент не требуется.
Пример -h, --help
npm
npx eslint --help
yarn
yarn dlx eslint --help
pnpm
pnpm dlx eslint --help
bun
bunx eslint --help
-v, --version
Этот параметр выводит текущую версию ESLint в консоль. При его указании все остальные параметры игнорируются. При использовании этого флага CLI не выполняет линтинг.
- Тип аргумента: аргумент не требуется.
Пример -v, --version
npm
npx eslint --version
yarn
yarn dlx eslint --version
pnpm
pnpm dlx eslint --version
bun
bunx eslint --version
--print-config
Этот параметр выводит конфигурацию, которая будет применяться к указанному файлу. При его использовании линтинг не выполняется, и допустимы только параметры, связанные с конфигурацией. При использовании этого флага CLI не выполняет линтинг.
- Тип аргумента: строка. Путь к файлу.
- Несколько аргументов: нет
Пример --print-config
npm
npx eslint --print-config file.js
yarn
yarn dlx eslint --print-config file.js
pnpm
pnpm dlx eslint --print-config file.js
bun
bunx eslint --print-config file.js
--stats
Этот параметр добавляет серию подробных показателей производительности (см. Тип статистики), например время разбора, исправления и проверки (время выполнения каждого правила), в объекты result, передаваемые форматтеру (см. Использование статистики в CLI).
- Тип аргумента: без аргумента.
Этот параметр предназначен для использования с пользовательскими форматтерами, отображающими статистику. Его также можно использовать со встроенным форматтером json.
Пример --stats
npm
npx eslint --stats --format json file.js
yarn
yarn dlx eslint --stats --format json file.js
pnpm
pnpm dlx eslint --stats --format json file.js
bun
bunx eslint --stats --format json file.js
--flag
Этот параметр включает один или несколько флагов функций ESLint.
- Тип аргумента: строка. Идентификатор функции.
- Несколько аргументов: да
Пример --flag
npm
npx eslint --flag x_feature file.js
yarn
yarn dlx eslint --flag x_feature file.js
pnpm
pnpm dlx eslint --flag x_feature file.js
bun
bunx eslint --flag x_feature file.js
--mcp
Этот параметр запускает MCP-сервер ESLint для использования с ИИ-агентами.
- Тип аргумента: без аргумента.
- Несколько аргументов: нет
Пример --mcp
npm
npx eslint --mcp
yarn
yarn dlx eslint --mcp
pnpm
pnpm dlx eslint --mcp
bun
bunx eslint --mcp
--concurrency
Этот параметр задаёт количество рабочих потоков, используемых для проверки файлов.
-
Тип аргумента: Int|String. Положительное целое число,
autoилиoff. - Несколько аргументов: нет
-
Значение по умолчанию:
off
Значение off приводит к тому, что все файлы проверяются в основном потоке. Значение auto позволяет автоматически определить оптимальную настройку.
Пример --concurrency
npm
npx eslint --concurrency auto
yarn
yarn dlx eslint --concurrency auto
pnpm
pnpm dlx eslint --concurrency auto
bun
bunx eslint --concurrency auto
Коды завершения
При проверке файлов ESLint завершается с одним из следующих кодов:
-
0: проверка выполнена успешно, ошибок нет. Если флаг--max-warningsимеет значениеn, количество предупреждений не превышаетn. -
1: проверка выполнена, но обнаружена как минимум одна ошибка либо количество предупреждений превышает допустимое значение параметра--max-warnings. -
2: проверка не выполнена из-за проблемы с конфигурацией или внутренней ошибки.
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/use/command-line-interface