Files
對組使用 Perl 的重命名
我有一組以下列方式命名的文件:
_9978967868768763ghjgj7598983678hjva_week1-6.pdf _78637832bdsjh275637bkkaww786b_week12-32.pdf 8786767867868978713bkwkhjhkjqw_week1-622.pdf 867813567bdjsbgbadsyu6712353125561235_week100-6.pdf
我有興趣使用
rename
實用程序來獲取名稱:week1-6.pdf week12-32.pdf week1-622.pdf week100-6.pdf
實現這一目標的正則表達式可能是:
(.*)(week.*)
效果很好(regex101):
問題
如何將此語法轉換為重命名的格式表達式:
s/expr1/expr2/[gi]
實際上,我想刪除第一組。
筆記
我對使用
mv
orsed
-based 解決方案不感興趣。我只想使用rename
實用程序。
試試這個,使用正確的方法:) 只是更正你的命令(你非常接近……):
rename 's/(.*)(week.*)/$2/' *.pdf
或簡化:
rename 's/.*(week.*)/$1/' *.pdf
**
prename
**方法:prename -n 's/.*_(week.*$)/$1/' *_week*.pdf
$1
- 指向第一個擷取的組