-2

Привет у меня есть файл в моем каталоге, как показано ниже:

ewPrd030MmCommonEaiClcBroker034_RSS.ActiveStores_cache.ver
ewPrd030MmCommonEaiClcBroker034_RSS.ActiveStores.Count_cache.dat

Мне нужно переименовать, как показано ниже:

ewPpt030MmCommonEaiClcBroker034_RSS.ActiveStores_cache.ver
ewPpt030MmCommonEaiClcBroker034_RSS.ActiveStores.Count_cache.dat

Можете ли вы дать мне знать один лайнер, который может сделать это?

2 ответа2

1

Если вы хотите переименовать много файлов, сделайте что-то вроде этого:

for f in *Prd*;do mv "$f" "${f/Prd/Ppt}"; done

Это позволит просмотреть все файлы, имя которых содержит Prd в текущем каталоге, и переименовать их. Он использует возможности bash (я предполагаю, что вы используете bash) для подстановки строк .

1

переименовать можно использовать для пакетного переименования файлов

С вашим примером:

$ rename -v 's/^ewPrd/ewPpt/' *ActiveStores*
ewPrd030MmCommonEaiClcBroker034_RSS.ActiveStores_cache.ver renamed as ewPpt030MmCommonEaiClcBroker034_RSS.ActiveStores_cache.ver
ewPrd030MmCommonEaiClcBroker034_RSS.ActiveStores.Count_cache.dat renamed as ewPpt030MmCommonEaiClcBroker034_RSS.ActiveStores.Count_cache.dat

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .