Удалить нижний колонтитул из сценария копирования Vertica

У меня есть скрипт копирования vertica (A.copy.vsql), который загружает данные в таблицу из файла, в котором есть HEADER, TRAILER и DETAIL RECORDS.

Оператор Vertica Copy может пропустить 1 запись, что означает, что я знаю, как удалить заголовок.

Я хочу знать, могу ли я нарезать трейлер таким же образом или нет?

Кроме того, если я не могу нарезать его как заголовок, могу ли я написать простые команды SED linux в самом VSQL (A.copy.vsql) для выполнения этой работы?

1 ответ

Решение

Если вы хотите удалить первую и последнюю строку из файла, вы можете использовать:

sed '1d;$d' file

И используется в команде, с шаблоном command fileС помощью bash можно использовать подстановку процесса:

command <(sed '1d;$d' file)

1 а также $ абсолютные адреса, 1 означает первую строку, а $ значит последний.d удаляет указанную строку.

<(...) это замена процесса.

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