GNU/Linux >> Belajar Linux >  >> Debian

Debian – Ada Apa Dengan Semua Rename:Prename, Rename, File-rename?

Pada sistem Debian saya (baik, sistem LMDE saya, tetapi cukup dekat), saya memiliki setidaknya 3 rename yang berbeda program:

  • /usr/local/bin/rename :Ini adalah skrip Perl, yang ditulis oleh Tom Christiansen. Anehnya, saya tidak dapat menemukan paket mana yang menginstalnya:

    $ dpkg -S /usr/local/bin/rename 
    dpkg-query: no path found matching pattern /usr/local/bin/rename
    
  • /usr/bin/prename :skrip perl lain, yang ditulis oleh Robin Barker, ini adalah bagian dari perl paket:

    $ dpkg -S /usr/bin/prename
    perl: /usr/bin/prename
    
  • /usr/bin/file-rename :satu lagi skrip Perl, tidak ada informasi kepenulisan yang jelas tetapi baik Larry (mungkin Wall) dan Robin (mungkin Barker) disebutkan. Yang ini diinstal dengan rename package dan juga di-symlink ke /usr/bin/rename :

    $ dpkg -S /usr/bin/file-rename
    rename: /usr/bin/file-rename
    

Saya juga punya rename.ul dari util-linux tapi mari kita abaikan yang itu untuk saat ini. Apa perbedaan antara 3 skrip Perl ini? Mereka semua tampaknya memiliki halaman manual yang sama, man rename , man file-rename dan man prename semua memberi saya halaman yang sama.

Saya bisa membaca skrip sendiri dan mencoba memahami perbedaannya tetapi itu tidak sepele dan saya berharap seseorang akan tahu fitur apa yang dimiliki masing-masing yang tidak dimiliki orang lain. Poin bonus untuk menjelaskan mengapa dunia Debian membutuhkan tiga skrip penggantian nama Perl yang terpisah.

Jawaban yang Diterima:

Tidak yakin apakah ini harus berupa komentar, tetapi ini hanya sebagian jawaban — Bug#735134:perl:rename(1) sudah kuno.

memiliki apa yang tampaknya menjadi benih kekacauan. Khususnya:

Jadi untuk meringkas:selama bertahun-tahun paket Perl telah menyediakan
/usr/bin/rename, utilitas mandiri yang diimplementasikan di Perl. Masalahnya adalah kami
tidak ingin menyediakan utilitas dari paket perl lagi karena
telah ditambahkan secara lokal di dalam debian/ dan tidak dipertahankan. A
versi terpelihara tersedia sebagai paket terpisah, libfile-rename-perl.

libfile-rename-perl disebutkan di atas sekarang diganti dengan rename :

$ apt-cache show rename | head
Package: rename
Version: 0.20-3
Installed-Size: 69
Maintainer: Debian Perl Group <[email protected]>
Architecture: all
Replaces: libfile-rename-perl
Provides: libfile-rename-perl
Depends: perl
Conflicts: libfile-rename-perl
Description-en: Perl extension for renaming multiple files

Jadi, Perl memiliki rename-nya sendiri yang tidak dikelola oleh Debian dan menyediakan /usr/bin/prename . Pengembang Debian mempertahankan rename paket (tampaknya sebelumnya dikenal sebagai libfile-rename-perl ) yang merupakan paket yang menyediakan /usr/bin/rename :symlink ke /etc/alternatives/rename yang merupakan symlink ke /usr/bin/file-rename naskah.

Skrip Tom Christiansen dibundel dengan Unicode::Tussle Perl modul. Anda mungkin telah menginstalnya dan itulah yang memberikan /usr/local/bin/rename .


Debian
  1. Cara membuat daftar semua file yang diinstal oleh paket DEB di Ubuntu/Debian Linux

  2. Amankan Debian dengan Antivirus ClamAV

  3. Centos – Ganti Nama Semua File Dengan Nama Tertentu?

  1. Debian – Keamanan Repositori Debian?

  2. Debian – Pengguna “debian-+”?

  3. Bagaimana Mengganti Nama Kumpulan File Dengan Pola?

  1. Debian – Mengotomatiskan Instalasi Paket Debian 8 Individu Dengan Perintah Interaktif?

  2. Instal OpenJDK 17, 16, 15, 13, 11 atau 8 terbaru di Ubuntu, Debian atau RHEL dengan Zulu OpenJDK build

  3. Dapatkan utilitas ganti nama Perl alih-alih ganti nama bawaan