В настоящее время у меня есть файл SQL, заполненный инструкциями вставки в форме:
INSERT INTO
database.table(primary_key,
foreign_key, url_one,
url_two, int_one,
int_two, int_three) VALUES
(266,7,https://some.url.com/image_one.png,https://some.url.com/image_two.png,266,1440,900);
Теперь я понял, что строки URL будут нуждаться в кавычках вокруг них, прежде чем я смогу выполнить их в MySQL. Какую команду я могу использовать, чтобы поместить кавычки вокруг строки URL?
Я пытался использовать «sed», чтобы сделать это, но я не мог понять команду правильно, поскольку я не полностью знаю синтаксис того, что Я хочу добиться:
sed -e "s/(https://).*(\.png)/\"(https://)$1(.png)\"/g" some_sql_file.sql
Запуск этого приводит к:
sed: -e expression #1, char 12:
неизвестная опция для `s '
blockquote>Любая помощь будет Буду признателен за то, что я хочу избежать регенерации файла SQL, просто вставляя кавычки, если это вообще возможно.
Я бы использовал:
sed -e 's@\(https\?://[^,]*\),@"\1",@g' FILE
Это ищет выражение, начинающееся с http
и необязательное s
, за которым следует ://
. Затем все сводится к первому ,
. Это выражение будет заключено в "
.