Vamos criar um script awk
que modifique seus dados para que seja facilmente ordenado da maneira que você deseja que ele seja classificado:
BEGIN { OFS = "\t" } # set output delimiter to a tab
/REORG TABLE/ { $0 = 1 OFS $0 } # prefix line with 1 for this op.
/REORG INDEX/ { $0 = 2 OFS $0 } # with 2
/RUNSTATS/ { $0 = 3 OFS $0 } # with 3
# prefix line with schema name (unconditionally)
{ match($0,"SCHEMA\.[^ ]*"); $0 = substr($0,RSTART,RLENGTH) OFS $0 }
# output modified line
{ print }
Este script awk
prefixaria cada linha com dois valores separados por tabulação:
- O nome do esquema, por ex.
SCHEMA.A
. - A etapa em que esta operação acontece para este esquema, que é um inteiro, 1, 2 ou 3.
Executando em seus dados:
$ awk -f script.awk file
SCHEMA.A 1 REORG TABLE SCHEMA.A some other options
SCHEMA.B 1 REORG TABLE SCHEMA.B some other options
SCHEMA.C 1 REORG TABLE SCHEMA.C some other options
SCHEMA.D 1 REORG TABLE SCHEMA.D some other options
SCHEMA.A 2 REORG INDEXES ALL FOR TABLE SCHEMA.A some other options
SCHEMA.B 2 REORG INDEXES ALL FOR TABLE SCHEMA.B some other options
SCHEMA.C 2 REORG INDEXES ALL FOR TABLE SCHEMA.C some other options
SCHEMA.D 2 REORG INDEXES ALL FOR TABLE SCHEMA.D some other options
SCHEMA.A 3 RUNSTATS ON TABLE SCHEMA.A some other options
SCHEMA.B 3 RUNSTATS ON TABLE SCHEMA.B some other options
SCHEMA.C 3 RUNSTATS ON TABLE SCHEMA.C some other options
SCHEMA.D 3 RUNSTATS ON TABLE SCHEMA.D some other options
O que isso faz é facilitar a localização das chaves de classificação para sort
.
Isso pode ser classificado e as novas colunas podem ser excluídas:
$ awk -f script.awk file | sort | cut -f 3-
REORG TABLE SCHEMA.A some other options
REORG INDEXES ALL FOR TABLE SCHEMA.A some other options
RUNSTATS ON TABLE SCHEMA.A some other options
REORG TABLE SCHEMA.B some other options
REORG INDEXES ALL FOR TABLE SCHEMA.B some other options
RUNSTATS ON TABLE SCHEMA.B some other options
REORG TABLE SCHEMA.C some other options
REORG INDEXES ALL FOR TABLE SCHEMA.C some other options
RUNSTATS ON TABLE SCHEMA.C some other options
REORG TABLE SCHEMA.D some other options
REORG INDEXES ALL FOR TABLE SCHEMA.D some other options
RUNSTATS ON TABLE SCHEMA.D some other options