Debian
為什麼 Debian/Ubuntu 上的重命名實用程序與其他發行版(如 CentOS)上的不同?
在 CentOS 上,重命名命令使用兩個簡單的字元串,
from
和to
.rename from to file...
而在 Debian/Ubuntu 上,它使用 perl 風格的正則表達式。
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
為什麼此實用程序因分佈而異?是否有關於哪些發行版提供或預設使用哪些實用程序版本的參考?
歷史。一條命令有兩條歷史記錄
rename
,基本用途相同,但語法和功能完全不同:
- util-linux包中的
rename
命令。它出現在 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、elementary 等)在這一點上傾向於遵循 Debian。
其他發行版在添加到 util-linux 時沒有
rename
命令,因此它們自然包含 util-linux 版本。