Чего я хочу?
Учитывая следующую структуру каталогов:
.
├── bar.py
├── hap
│ ├── bla.py
│ └── tests
│ └── test_hap.py
└── hip
├── testimony.py
└── tests
├── foo.py
└── test_hip.py
Я хотел бы перейти к следующему:
.
├── bar.py
├── hap
│ ├── bla.py
│ └── tests
│ └── test_hap.py.bad
└── hip
├── testimony.py
└── tests
├── foo.py
└── test_hip.py.bad
Итак, я хочу , чтобы добавить .bad
ко всем файлам , начиная с test_
, которые находятся в директории tests
Что я пробовал?
Из советов, приведенных в этой теме, я попробовал следующее:
shopt -s globstar
rename "s/tests\/test_.*/tests\/test_.*\.bad/" **
Но .*
В new
части шаблона замены s/old/new
, по-видимому, автоматически экранируется. Как я могу позволить второму .*
Интерпретировать как регулярное выражение?
Кроме того, используя test_.*\.bad$
дает мне следующее:
Final $ should be \$ or $name at (eval 1) line 1, within string