CLI Reference¶
sqlfluff¶
Sqlfluff is a modular sql linter for humans.
sqlfluff [OPTIONS] COMMAND [ARGS]...
Options
-
--version
¶
Show the version and exit.
dialects¶
Show the current dialects available.
sqlfluff dialects [OPTIONS]
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.
fix¶
Fix SQL files.
PATH is the path to a sql file or directory to lint. This can be either a file (‘path/to/file.sql’), a path (‘directory/of/sql/files’), a single (‘-‘) character to indicate reading from stdin or a dot/blank (‘.’/’ ‘) which will be interpreted like passing the current working directory as a path argument.
sqlfluff fix [OPTIONS] [PATHS]...
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.
-
--logger
<logger>
¶ Choose to limit the logging to one of the loggers.
- Options
parser|linter|rules
-
--bench
¶
Set this flag to engage the benchmarking tool output.
-
--ignore
<ignore>
¶ Ignore particular families of errors so that they don’t cause a failed run. For example –ignore parsing would mean that any parsing errors are ignored and don’t influence the success or fail of a run. Multiple options are possible if comma seperated e.g. –ignore parsing,templating.
-
--exclude-rules
<exclude_rules>
¶ Exclude specific rules. For example specifying –exclude-rules L001 will remove rule L001 (Unnessesary trailing whitespace) from the set of considered rules. This could either be the whitelist, or the general set if there is no specific whitelist. Multiple rules can be specified with commas e.g. –exclude-rules L001,L002 will exclude violations of rule L001 and rule L002.
-
--rules
<rules>
¶ Narrow the search to only specific rules. For example specifying –rules L001 will only search for rule L001 (Unnessesary trailing whitespace). Multiple rules can be specified with commas e.g. –rules L001,L002 will specify only looking for violations of rule L001 and rule L002.
-
--templater
<templater>
¶ The templater to use (default=jinja)
-
--dialect
<dialect>
¶ The dialect of SQL to lint (default=ansi)
-
-f
,
--force
¶
skip the confirmation prompt and go straight to applying fixes. Use this with caution.
-
--fixed-suffix
<fixed_suffix>
¶ An optional suffix to add to fixed files.
Arguments
-
PATHS
¶
Optional argument(s)
lint¶
Lint SQL files via passing a list of files or using stdin.
PATH is the path to a sql file or directory to lint. This can be either a file (‘path/to/file.sql’), a path (‘directory/of/sql/files’), a single (‘-‘) character to indicate reading from stdin or a dot/blank (‘.’/’ ‘) which will be interpreted like passing the current working directory as a path argument.
Linting SQL files:
sqlfluff lint path/to/file.sql sqlfluff lint directory/of/sql/files
Linting a file via stdin (note the lone ‘-‘ character):
cat path/to/file.sql | sqlfluff lint - echo ‘select col from tbl’ | sqlfluff lint -
sqlfluff lint [OPTIONS] [PATHS]...
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.
-
--logger
<logger>
¶ Choose to limit the logging to one of the loggers.
- Options
parser|linter|rules
-
--bench
¶
Set this flag to engage the benchmarking tool output.
-
--ignore
<ignore>
¶ Ignore particular families of errors so that they don’t cause a failed run. For example –ignore parsing would mean that any parsing errors are ignored and don’t influence the success or fail of a run. Multiple options are possible if comma seperated e.g. –ignore parsing,templating.
-
--exclude-rules
<exclude_rules>
¶ Exclude specific rules. For example specifying –exclude-rules L001 will remove rule L001 (Unnessesary trailing whitespace) from the set of considered rules. This could either be the whitelist, or the general set if there is no specific whitelist. Multiple rules can be specified with commas e.g. –exclude-rules L001,L002 will exclude violations of rule L001 and rule L002.
-
--rules
<rules>
¶ Narrow the search to only specific rules. For example specifying –rules L001 will only search for rule L001 (Unnessesary trailing whitespace). Multiple rules can be specified with commas e.g. –rules L001,L002 will specify only looking for violations of rule L001 and rule L002.
-
--templater
<templater>
¶ The templater to use (default=jinja)
-
--dialect
<dialect>
¶ The dialect of SQL to lint (default=ansi)
-
-f
,
--format
<format>
¶ What format to return the lint result in.
- Options
human|json|yaml
-
--nofail
¶
If set, the exit code will always be zero, regardless of violations found. This is potentially useful during rollout.
-
--disregard-sqlfluffignores
¶
Perform the operation regardless of .sqlfluffignore configurations
Arguments
-
PATHS
¶
Optional argument(s)
parse¶
Parse SQL files and just spit out the result.
PATH is the path to a sql file or directory to lint. This can be either a file (‘path/to/file.sql’), a path (‘directory/of/sql/files’), a single (‘-‘) character to indicate reading from stdin or a dot/blank (‘.’/’ ‘) which will be interpreted like passing the current working directory as a path argument.
sqlfluff parse [OPTIONS] PATH
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.
-
--logger
<logger>
¶ Choose to limit the logging to one of the loggers.
- Options
parser|linter|rules
-
--bench
¶
Set this flag to engage the benchmarking tool output.
-
--ignore
<ignore>
¶ Ignore particular families of errors so that they don’t cause a failed run. For example –ignore parsing would mean that any parsing errors are ignored and don’t influence the success or fail of a run. Multiple options are possible if comma seperated e.g. –ignore parsing,templating.
-
--exclude-rules
<exclude_rules>
¶ Exclude specific rules. For example specifying –exclude-rules L001 will remove rule L001 (Unnessesary trailing whitespace) from the set of considered rules. This could either be the whitelist, or the general set if there is no specific whitelist. Multiple rules can be specified with commas e.g. –exclude-rules L001,L002 will exclude violations of rule L001 and rule L002.
-
--rules
<rules>
¶ Narrow the search to only specific rules. For example specifying –rules L001 will only search for rule L001 (Unnessesary trailing whitespace). Multiple rules can be specified with commas e.g. –rules L001,L002 will specify only looking for violations of rule L001 and rule L002.
-
--templater
<templater>
¶ The templater to use (default=jinja)
-
--dialect
<dialect>
¶ The dialect of SQL to lint (default=ansi)
-
--recurse
<recurse>
¶ The depth to recursively parse to (0 for unlimited)
-
-c
,
--code-only
¶
Output only the code elements of the parse tree.
-
-f
,
--format
<format>
¶ What format to return the parse result in.
- Options
human|json|yaml
-
--profiler
¶
Set this flag to engage the python profiler.
-
--nofail
¶
If set, the exit code will always be zero, regardless of violations found. This is potentially useful during rollout.
Arguments
-
PATH
¶
Required argument
rules¶
Show the current rules in use.
sqlfluff rules [OPTIONS]
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.
version¶
Show the version of sqlfluff.
sqlfluff version [OPTIONS]
Options
-
-n
,
--nocolor
¶
No color - if this is set then the output will be without ANSI color codes.
-
-v
,
--verbose
¶
Verbosity, how detailed should the output be. This is stackable, so -vv is more verbose than -v. For the most verbose option try -vvvv or -vvvvv.
-
--version
¶
Show the version and exit.