Я застрял на 2 часа в простом процессе, потому что меня не устраивает bash script & regex: (
Я хотел бы загрузить файл с помощью bash script. Целевой файл доступен по адресуURL со следующим шаблоном имени:
https://domain-name.com/JAWSDB_xxxxxxxxxxxxxxxxx.sql.gz?AWSAccessKeyId=XXXXXXXXXXXXXXXX&Expires=xxxxxx&Signature=%2XXXXXXXXXXXXXXXXXXXX
Моя первая идея состояла в том, чтобы использовать curl -O, но он создает действительно грязные имена файлов, включая параметры URL, поэтому я хотел бы оставить только следующую часть JAWSDB_xxxxxxxxxxxxxxxxx.sql.gz
(иудалить параметры конечного URL).
Я нашел регулярное выражение .+?(?=\?)
, которое, похоже, удаляет URL-адреса, но я не знаю, как заставить его работать с командой curl -O
.
Большое спасибо.
(PS: я разрабатываю на OSX и планирую запустить скрипт на Linux)