いくつかのファイルがありますが、/opt/rec/
bashを使用していくつかのファイルの名前だけを変更したいと思います。
元のファイル名:
WK6LZTPR99999999_dig_2017-07-10 01:55:57.xy
このディレクトリのすべてのファイルを次に変更したいと思います。
WK6LZTPR99999999_cur_2017-07-10 01:55:57.mp3
答え1
bash
解決策は次のとおりです。
for file in /path/to/*; do
nname="${file%%.*}.mp3" # strip last part of file till first . seen
echo mv "$file" "${nname//dig/cur}" # replace 'dig' with 'cur'
done
それでmmv
ずっと簡単です。
mmv '*_*_*.*' '#1_cur_#3.mp3'
または以下を使用してzmv
:
zmv -w '*_*_*.*' '$1_cur_$3.mp3'
答え2
そして真珠 名前を変更する注文する:
rename 's/_dig_([^.]+)\.xy$/_cur_$1.mp3/' /opt/rec/*.xy
答え3
次の2つの手順で名前変更コマンドを使用できます。
cd /opt/rec/
rename -v "_dig_" "_cur_" *.xy
rename -v ".xy" ".mp3" *.xy