Script DOS per rinominare i file

Se ci sono più file in un documento che un utente vorrebbe modificare l'estensione di, l'individuo può utilizzare un comando batch, che cambierà l'estensione di tutti i file simili all'estensione desiderata. Ad esempio, se si desidera modificare i file con un'estensione di .avi in ​​.bmp, è necessario fornire due argomenti con l'estensione 'from' e l'estensione 'to'. Se il nome del file è test.bat, il comando dovrebbe apparire in questo modo: test * .avi * .bmp. Questo comando cambierà tutti i file di estensione .avi nei file di estensione .bmp. In alternativa, scaricare biterscripting da biterscripting.com per modificare le estensioni dei file.

Problema

Vorrei sapere quali comandi batch posso usare per rinominare i file nella directory chiamata \ gbr1w001data_transfer_gb77 $

 INVPRT_5023949000004_20080818061329_0000979.GB ---> 5023949000004_MSG_IN_20080818061329_0000979.GB PPRHDR_5000119000006_20080721061424_00000981.GB_m ---> 5000119000006_MSG_IN_20080721061424_00000981.GB_m SLSRPT_5023949000004_20080721061317_00000978.GB ---> 5023949000004_MSG_IN_20080721061317_00000978.GB 

Fondamentalmente mi piacerebbe rilasciare 7 caratteri all'inizio del file e inserire MSG_IN_ dopo i successivi 14 caratteri.

Per favore aiuto!

Soluzione

Per

 / r %% x in (% 1) do ren "%% x"% 2 

Questo rinominerà il file in modo ricorsivo :-)

  • Salva in un file da 2 argomenti dall'estensione e all'estensione.
  • ex: il nome del file è test.bat
  • comando: test * .avi * .bmp

Rinomina tutti i file con estensione avi in ​​bmp (in tutte le sottocartelle).

Soluzione 2

Il seguente script di biters farà proprio questo. Per scaricare gratuitamente biterscripting, vai al loro sito Web all'indirizzo biterscripting.com

Salva lo script in un file chiamato C: /X.txt. Avvia biterscripting interattivo e chiama lo script esattamente come segue:

 script "C: /X.txt" dir ("\ gbr1w001 \ data_transfer_gb77") schema ("INVPRT_") 

Tutte le dir, i nomi dei file, i pattern sono degli esempi, usa i tuoi.

Puoi chiamare questo script su qualsiasi modello che descrivi. Oppure, puoi creare uno script master per chiamare ripetutamente questo script per ciascun pattern. Puoi farlo in modalità batch chiamando biterscripting

da un altro programma o DOS.

stex = estensore di stringhe, chex = carattere extracter, chin = inseritore di caratteri, -p = preserva la stringa originale, ] = fino a includere, ecc. Esegui un aiuto sui comandi per ottenere i dettagli. Questi sono comandi dell'editor piuttosto potenti.

Sen

 # START OF SCRIPT # Dichiara argomenti di input. var str dir pattern # Raccoglie un elenco di file corrispondenti al modello. lista var str find -f $ modello $ dir> $ lista # L'elenco dei file è in $ list. Procedere uno alla volta. while ($ list "") do # Ottieni il file successivo. var str file, percorso, old_name, new_name lex "1" $ lista> $ file # Rimuovi percorso. Questo ci darà solo il nome del file in $ old_name. stex -p "^ / ^ l [" $ file> $ old_name # Dopo (ma escluso) l'ultimo / # Elimina i primi 7 caratteri. chex -p "7]" $ old_name> $ new_name # Inserisci MSG_IN_ dopo 14 caratteri. chin "14" "MSG_IN_" $ new_name> null # Stiamo usando> null perché non vogliamo vedere l'output # Vogliamo inserire MSG_IN_ in $ new_name (quindi nessuna opzione -p). script SS_SlashBack.txt ospath ($ file)> $ file # Rinomina $ file in $ new_name system rinomina $ file $ new_name # END OF SCRIPT 

Nota

Grazie a satya per questo suggerimento sul forum.

Articolo Precedente Articolo Successivo

I Migliori Consigli