Come aggiungere un prefisso a tutti i file e le cartelle in una cartella? (finestre)


14

Il seguente comando modifica solo il nome dei file ma non le cartelle.

for %a in (*) do ren "%a" "00_%a"


Devi assolutamente usare un file batch? Non puoi usare un programma come Rename Master per farlo?
Dour High Arch,

Risposte:


15

Il seguente comando modifica solo il nome dei file ma non le cartelle.

for %a in (*) do ren "%a" "00_%a"

Appunti:

  • L'uso forcome sopra non è consigliato.
  • È possibile che i file possano essere rinominati più volte.
  • Vedi sotto per il motivo.

Utilizzare quanto segue in una cmdshell:

for /f "tokens=*" %a in ('dir /b') do ren "%a" "00_%a"

In un file batch (sostituisci %con %%):

for /f "tokens=*" %%a in ('dir /b') do ren "%%a" "00_%%a"

Nota:

È fondamentale che tu usi FOR /Fe non il semplice FOR.

I FOR /Fraccoglie l'intero risultato del DIRcomando prima che inizi iterazione, mentre la semplice FORinizia iterare dopo il buffer interno è pieno, che aggiunge un rischio di rinominare lo stesso file più volte.

come consigliato da dbenham nella sua risposta per aggiungere "testo" alla fine di più nomi di file :


Ulteriori letture


0

Per eseguire questo ciclo For su cartelle (directory) anziché file, è sufficiente includere l' /Dopzione.

for /D %a in (*) do ren "%a" "00_%a"

Da for /?:

FOR / D% variabile IN (set) comando DO [comando-parametri]

If set contains wildcards, then specifies to match against directory
names instead of file names.

renfunziona su cartelle. La limitazione è che "non è possibile specificare un'unità o un percorso diverso per la destinazione.
DavidPostill

@DavidPostill Sì, era una vecchia abitudine che si insinuava, l'ho cambiata di nuovo in Ren.
Ƭᴇcʜιᴇ007,

Puoi eseguire sia file che cartelle in un solo comando (vedi la mia risposta). E sospetto che for /dpotrebbe anche avere il problema di provare a elaborare i valori più volte (vedi anche la mia risposta).
DavidPostill
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.