Hello,

I changed the format of the tables a long time ago so that they could be parsed in standard Linux tools such as AWK.
https://github.com/apache/airflow/pull/8409
For example, to list the files that contain the DAG, I could run the command below.
```
airflow dags list | grep -v "dag_id" | awk '{print $2}' | sort | uniq
```
To pause all dags:
```bash
airflow dags list | awk '{print $1}' | grep -v "dag_id"| xargs airflow dags pause
```
Unfortunately [that has changed](https://github.com/apache/airflow/pull/12704) and we now have more fancy tables, but harder to use in standard Linux tools.

Alternatively, we can use JSON output, but I don't always have JQ installed on production environment, so performing administrative tasks is difficult for me.
```bash
$  docker run apache/airflow:2.0.1 bash -c "jq"

/bin/bash: jq: command not found
```

Best regards,
Kamil Breguła

CC: @turbaszek 
airflow/cli/cli_parser.py
description=(
            "Run subsections of a DAG for a specified date range. If reset_dag_run option is used, "
            "backfill will first prompt users whether airflow should clear all the previous dag_run and "
            "task_instances within the backfill date range. If rerun_failed_tasks is used, backfill "
            "will auto re-run the previous failed task instances  within the backfill date range"
        ),
        func=lazy_load_command('airflow.cli.commands.dag_command.dag_backfill'),
        args=(
            ARG_DAG_ID,
            ARG_TASK_REGEX,
            ARG_START_DATE,
            ARG_END_DATE,
            ARG_MARK_SUCCESS,
            ARG_LOCAL,
            ARG_DONOT_PICKLE,
            ARG_YES,
            ARG_BF_IGNORE_DEPENDENCIES,
            ARG_BF_IGNORE_FIRST_DEPENDS_ON_PAST,
            ARG_SUBDIR,
            ARG_POOL,
            ARG_DELAY_ON_LIMIT,
            ARG_DRY_RUN,
            ARG_VERBOSE,
            ARG_CONF,
            ARG_RESET_DAG_RUN,
            ARG_RERUN_FAILED_TASKS,
            ARG_RUN_BACKWARDS,
        ),
    ),
    ActionCommand(