У меня есть строка в переменной $OUTPUT
, и я хочу получить only каталог резервного копирования. Я протестировал свое регулярное выражение на regex101 и на других языках , и оно работает, но в Shell это не так.
OUTPUT="Backup created at /data/bkp/bkp-2019_04_25/dremio_backup_2019-04-25_15.56, tables 25, uploaded files 0"
REGEX=\/.*?(\,) # Returns: /data/bkp/bkp-2019_04_25/dremio_backup_2019-04-25_15.56, dremio tables 25,
REGEX2=\/.+?(\,) # Returns: /data/bkp/bkp-2019_04_25/dremio_backup_2019-04-25_15.56, tables 25,
REGEX3=\/.*?(?=\,) # Returns nothing
if [[ $OUTPUT =~ $REGEX ]]; then echo ${BASH_REMATCH}; fi
if [[ $OUTPUT =~ $REGEX2 ]]; then echo ${BASH_REMATCH}; fi
if [[ $OUTPUT =~ $REGEX3 ]]; then echo ${BASH_REMATCH}; fi