GNU/Linux >> Linux Esercitazione >  >> Debian

Debian – Che cos'è con tutti i rinomina:Prename, Rename, File-rename?

Sul mio sistema Debian (beh, il mio sistema LMDE, ma abbastanza vicino), ho almeno 3 diversi rename programmi:

  • /usr/local/bin/rename :Questa è una sceneggiatura Perl, scritta da Tom Christiansen. Stranamente, non riesco a trovare quale pacchetto lo abbia installato:

    $ dpkg -S /usr/local/bin/rename 
    dpkg-query: no path found matching pattern /usr/local/bin/rename
    
  • /usr/bin/prename :un altro script perl, scritto da Robin Barker, questo fa parte del perl pacchetto:

    $ dpkg -S /usr/bin/prename
    perl: /usr/bin/prename
    
  • /usr/bin/file-rename :ancora un altro script Perl, nessuna chiara informazione sulla paternità ma sono menzionati sia un Larry (presumibilmente Wall) che un Robin (presumibilmente Barker). Questo viene installato da rename pacchetto ed è anche un collegamento simbolico a /usr/bin/rename :

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

Ho anche rename.ul da util-linux ma ignoriamo quello per ora. Qual è la differenza tra questi 3 script Perl? Sembrano avere tutti la stessa pagina man, man rename , man file-rename e man prename tutti mi danno la stessa pagina.

Potrei esaminare le sceneggiature stesse e cercare di capire le differenze, ma non è banale e spero che qualcuno sappia quali caratteristiche hanno ciascuno e gli altri no. Punti bonus per spiegare perché il mondo Debian ha bisogno di tre script di ridenominazione Perl separati.

Risposta accettata:

Non sono sicuro che questo debba essere un commento, ma è solo una risposta parziale — Bug#735134:perl:rename(1) è antico.

ha quelli che sembrano essere i semi del pasticcio. Nello specifico:

Quindi, per riassumere:per molti anni il pacchetto perl ha fornito
/usr/bin/rename, un'utilità standalone implementata in perl. Il problema è che
non vogliamo più fornire l'utilità dal pacchetto perl perché
è stato aggiunto localmente all'interno di debian/ e non viene mantenuto. Una versione mantenuta
è disponibile come pacchetto separato, libfile-rename-perl.

Il libfile-rename-perl menzionato sopra è ora sostituito da 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

Quindi, Perl ha il suo rename che non è gestito da Debian e fornisce /usr/bin/prename . Gli sviluppatori Debian mantengono una rename pacchetto (apparentemente precedentemente noto come libfile-rename-perl ) che è il pacchetto che fornisce /usr/bin/rename :un collegamento simbolico a /etc/alternatives/rename che di per sé è un collegamento simbolico a /usr/bin/file-rename copione.

La sceneggiatura di Tom Christiansen è in bundle con Unicode::Tussle di Perl modulo. Probabilmente l'hai installato ed è ciò che ha fornito /usr/local/bin/rename .


Debian
  1. Come elencare tutti i file installati dal pacchetto DEB su Ubuntu/Debian Linux

  2. Proteggi Debian con ClamAV Antivirus

  3. Centos:rinominare tutti i file con un certo nome?

  4. Come installare Ghost su Debian con Nginx

  5. Ottieni l'utilità di ridenominazione Perl invece della ridenominazione integrata

Crittografia senza password della partizione radice di Linux su Debian 8 con una chiave USB

Il server perfetto - Debian 9 (Stretch) con Apache, BIND, Dovecot, PureFTPD e ISPConfig 3.1

Il server perfetto - Debian 10 (Buster) con Apache, BIND, Dovecot, PureFTPD e ISPConfig 3.2

Copia del testo sul terminale Debian

Padroneggiare il comando ad albero su Debian

Novità di Debian 11 "Bullseye"