Я получил переменную в bash-скрипте, которую мне нужно заменить. Единственная константа в строке состоит в том, что она будет заканчиваться на «_ (* x) xxxp.mov». Где x - это числа и могут иметь длину от 3 до 4. Например, я знаю, как заменить значение, но только если оно является константой:
echo 'whiteout-tlr1_1080p.mov' | sed 's/_[0-9]*[0-9][0-9][0-9]p.mov/_h1080p.mov/g'
Как перенести совпадение с регулярным выражением в строку замены?
Edit:
Хорошо, я только что узнал, что grep может печатать только совпадение, лучше ли сделать что-то подобное?
urltrail=$(echo $@ | grep -o [0-9]*[0-9][0-9][0-9]p.mov)
newurl=$(sed 's/$urltrail/h$urltrail/g')
Хм, попробовал вышеописанное, но зависаю.