ファイル名を次のように変更する方法。可能なようですが、どうすればいいかrename
わかりません。
A_B_C.pdf
到着
C_A_B.pdf
A
、B
およびC
私のファイル名には別の単語があります(例Complete_Works_Plato.pdf
:。
答え1
rename -n 's/([^_]*_[^_]*)_([^_]*).pdf/$2_$1.pdf/' *
[^_]*
下線以外の数字に制限はありません。( )
グループをキャプチャします。最初のペアはコピーで構成され、$1
2番目のペアはコピーで構成されています$2
。
-n
出力が満足な場合は削除してください。
シェルスクリプトに対する同様のアプローチ:
for file in *.pdf; do
f12=${file%_*}
f3=${file##*_}
f3=${f3%.pdf}
mv -- "$file" "${f3}_${f12}.pdf"
done
存在するパラメータ拡張%
そしての意味を発見するでしょう##
。