CentOSでは、renameコマンドは2つの単純な文字列from
を使用します およびto
。
rename from to file...
Debian / Ubuntuでは、perlスタイルの正規表現を使用します。
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
このユーティリティがディストリビューションに基づいて異なるのはなぜですか?どのディストリビューションがどのバージョンのユーティリティに出荷またはデフォルト設定されるかについての参照はありますか?
承認された回答:
歴史。 rename
には2つの履歴行があります コマンド、基本的な目的は同じですが、構文と機能が完全に異なります:
rename
util-linuxパッケージのコマンド。バージョン2.10eに登場し、プログラムの日付は2000-01-01です。- サンプルプログラムとしてPerlとともに配布されたperlスクリプト。 Debianの変更ログには、1999年6月にDebianに追加されたことが記録されています(プログラム自体は少なくとも1992年にさかのぼります)。下位互換性のある別のバージョンには、Unicode ::Tussleが付属しています(Debian jessieの時点では、
file-rename
と呼ばれています。 、およびrename
で提供されます パッケージ;他のいくつかのディストリビューションでは、これをprename
と呼んでいます。 。
一方では、util-linuxはコアパッケージであるため、Debianの気まぐれに含まれていたPerlサンプルスクリプトよりも標準的です。一方、Perlスクリプトは最初にDebianにありました。これまでのところ、Debianは他のディストリビューションと連携するのではなく、過去のDebianリリースとの互換性を維持することを選択しています。 Debianから派生したディストリビューション(Ubuntu、Mint、エレメンタリーなど)は、この点でDebianに従う傾向があります。
他のディストリビューションにはrename
がありませんでした util-linuxに追加されたときのコマンドなので、当然util-linuxバージョンが含まれます。