Bashでファイル名を一括変更する 質問する

Bashでファイル名を一括変更する 質問する

Bash で一連のパッケージの名前を変更してバージョン番号を削除するにはどうすればよいでしょうか? と の両方を試してみましたexpr%%、うまくいきませんでした。

例:

Xft2-2.1.13.pkgなるXft2.pkg

jasper-1.900.1.pkgなるjasper.pkg

xorg-libXrandr-1.2.3.pkgなるxorg-libXrandr.pkg

ベストアンサー1

bashのパラメータ拡張機能を使うこともできます

for i in ./*.pkg ; do mv "$i" "${i/-[0-9.]*.pkg/.pkg}" ; done

スペースを含むファイル名には引用符が必要です。

おすすめ記事