Несколько фильтров с Schemacrawler?

Я хотел бы отфильтровать несколько шаблонов, потому что наша схема имеет лишние (для целей предполагаемой диаграммы) имена таблиц, такие как foo_AUDIT, bar_enum_baz, а также SYSTEM, Поэтому я хотел бы скрыть все таблицы, содержащие AUDIT, enum или SYSTEM.

Но возможно ли это? Я пробовал различные способы использования -grepcolumns а также invert-match но может отфильтровывать только один шаблон за раз. Моя первая попытка была такая:

-grepcolumns=.*(AUDIT|_enum_|SYSTEM).* \

Но кажется, что базовый преобразователь регулярных выражений действительно похож на grep и не поддерживает группы захвата?

Я пробовал несколько -grepcolumns, но это тоже не работает.

Любое решение этого?

Для справки это мой вызов до сих пор:

    ./schemacrawler.sh \
        -command=schema \
        -grepcolumns=.*\\..*AUDIT\\..* \
        -hideemptytables \
        -infolevel=standard \
        -invert-match \
        -only-matching \
        -portablenames \
        -sortcolumns \
        <...connection options>

1 ответ

О, как только я нажму на пост, я найду пример документации:

-grepcolumns=.*\.STREET|.*\.PRICE

Вместе с -invert-match это работает отлично.

(Я получил документацию от запуска ./schemacrawler.sh --help)

Другие вопросы по тегам