Копирование имени одного файла в другой в Bash с подстановочными знаками

Как я могу скопировать имя *.mkv в poster.jpg в bash, используя подстановочные знаки.

Спасибо


person Dvae    schedule 13.07.2017    source источник
comment
добро пожаловать в SO... что вы пробовали? как не получилось? приведите примеры... прочитайте stackoverflow.com/help/how-to-ask и stackoverflow.com/help/mcve   -  person Sundeep    schedule 13.07.2017
comment
Этот вопрос не касается программирования, как это определено для StackOverflow. Это может быть более подходящим на superuser.com или другом сайте StackExchange. Воспользуйтесь ссылкой flag внизу вашего вопроса и попросите модератора переместить его. Пожалуйста, не публикуйте один и тот же вопрос на двух разных сайтах. Пожалуйста прочитайте stackoverflow.com/help/how-to-ask stackoverflow.com/help/dont-ask и stackoverflow.com/help/mcve, прежде чем публиковать здесь дополнительные вопросы. Удачи.   -  person shellter    schedule 13.07.2017
comment
Вы просто хотите cp *.mkv poster.jpg (при условии, что совпадет только один файл)?   -  person Tom Fenech    schedule 13.07.2017


Ответы (1)


Если вы хотите сопоставить файлы с *.mkv в имени и для каждого файла с именем <foo>.mkv вы хотите создать foo.jpg, вы можете использовать регулярные выражения с круглыми скобками вокруг частей регулярного выражения, которые вы хотите сопоставить, а затем использовать ${BASH_REMATCH[n]} чтобы получить доступ к n'th совпавшей части регулярного выражения и повторно использовать ее в другом месте. Здесь есть пример: строка соответствия регулярному выражению bash.

Если вы пытаетесь сделать что-то совершенно отличное от того, что я только что описал, вероятно, было бы неплохо уточнить ваш вопрос.

person anandsun    schedule 13.07.2017