Perché manca il comando di rinomina da macOS?

2

Di solito rinominare file e directory con il comando mv . Sto leggendo un libro su shell bash che menziona il comando rename . Quando ho eseguito man rename è stata mostrata una pagina man. Tuttavia, quando ho inserito rename su shell bash, ha riportato:

-bash: rename: command not found

Ho fatto alcune ricerche e ho scoperto che è possibile installare il comando rename con Homebrew.

  • C'è qualche buona ragione per non installarlo con Homebrew?

  • C'è qualcosa che puoi fare con il comando rename che non puoi fare con il comando mv ?

Sono anche curioso di sapere se esiste una spiegazione nota del motivo per cui il comando rename non esiste in primo luogo. E perché esiste una pagina man per un comando che non esiste?

UPDATE: Sembra che con il comando rename puoi eseguire regex in questo modo:

rename 's/(.*)(.*)/new$1$2/' *

Con mv , questo non sembra possibile.

    
posta StevieD 21.08.2018 - 04:52
fonte

1 risposta

4

Nell'installazione predefinita di macOS, la pagina man rinomina è disponibile nella sezione 2. Come puoi notare dalla pagina man, la rinomina non è un comando ma una chiamata di sistema BSD.

La formula Homebrew denominata rename è uno script Perl. Si dovrebbe andare bene con l'installazione. In effetti può darti molta più flessibilità rispetto al semplice comando mv.

Dopo aver installato l'utilità di rinomina tramite Homebrew, l'esecuzione di man rename mostrerà la pagina man per l'utilità installata e non la chiamata di sistema BSD.

I'm also curious to know if there is a known explanation for why the command does not exist in the first place.

rinomina non è un comando Unix standard.

And why is there a man page for a command that does not exist?

Come accennato in precedenza, la pagina man presente si riferisce alla chiamata di sistema con lo stesso nome.

    
risposta data 21.08.2018 - 04:59
fonte

Leggi altre domande sui tag