Используя терминал на Mac OSX (iTerm2) без внешних приложений, кроме postgres, я хочу запустить некоторое регулярное выражение для поиска/замены в довольно большом (52 МБ) файле данных pg_dump, поскольку он импортируется в базу данных PostgreSQL. Мне нужно сделать это, прежде чем файл дампа попадет в PostgreSQL, потому что мне нужно преобразовать входящие SQL-запросы, которые создают и изменяют таблицы.Как запустить фильтр по данным pg_dump во время импорта?
Команда оболочки Я использую для импорта данных является:
psql MyDatabase < mydata.sql
Есть ли способ трубы данные через регулярные выражения поиска/замены фильтра? Могу ли я что-то сделать с родными утилитами командной строки Linux, такими как grep?
В качестве альтернативы, как бы я мог выгружать мои регулярные выражения и применять их к моему дамп-файлу, а затем сохранить изменения в новый файл?
Вопрос на данный момент абсолютно бесполезен. Скажите 'regex find/replace' что? Проведя здесь время, вы не знаете, что делает [\ [mcve \]] (http://stackoverflow.com/help/mcve)? – sjsam
@sjsam Я понятия не имею, что вы имеете в виду. – Redtopia
Пожалуйста, отредактируйте вопрос, добавив информацию о 'pattern', который вы хотите заменить, и' new pattern'. Также подумайте о том, чтобы добавить инструменты, которыми вы располагаете, например 'sed'' awk' и так далее. – sjsam