Skript DOS za preimenovanje datotek

Če je v dokumentu več datotek, ki bi jih uporabnik želel spremeniti, lahko posameznik uporabi paketni ukaz, ki bo spremenil razširitev vseh podobnih datotek na želeno končnico. Na primer, če želite spremeniti datoteke z razširitvijo .avi na .bmp, bi morali podati dva argumenta s pripono 'od' in pripono 'do'. Če je ime datoteke test.bat, mora ukaz videti takole: test * .avi * .bmp. Ta ukaz spremeni vse razširitvene datoteke .avi v datoteke razširitev .bmp. Druga možnost je, da prenesete bitni skript iz biterscripting.com, da spremenite pripone datotek.

Težava

Rad bi vedel, katere ukazne pakete lahko uporabim za preimenovanje datotek v imeniku, imenovanem 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 

V bistvu bi rad spustil 7 znakov na začetku datoteke in po naslednjih 14 znakih vstavil MSG_IN_.

Prosim pomagajte!

Rešitev

Za

 / r %% x v (% 1) naredite "%% x"% 2 

To bo preimenovala datoteko rekurzivno :-)

  • Shrani v datoteko 2 argumenta od pripone in pripone.
  • ex: ime datoteke je test.bat
  • command: test * .avi * .bmp

Preimenuje vse datoteke z razširitvijo avi v bmp (v vseh podmapah).

Rešitev 2

Naslednji bitni skript bo naredil prav to. Če želite prenesti bitni skripte brezplačno, pojdite na njihovo spletno mesto na biterscripting.com

Skript shranite v datoteko C: /X.txt. Začnite z interaktivnim bitnim pisanjem in pokličite skript točno tako:

 skript "C: /X.txt" dir ("gbr1w001 "_transfer_gb77") vzorec ("INVPRT_") 

Vsi dir, ime datoteke, vzorec so primeri, uporabite svoje.

Ta skript lahko pokličete na kateri koli vzorec, ki ga opisujete. Lahko pa izdelate tudi glavni skript, ki bo ponavljano klical ta skript za vsak vzorec. To lahko storite v paketnem načinu, tako da pokličete biterscripting

iz drugega programa ali DOS-a.

stex = izvleček nizov, chex = znakov ekstrakt, chin = vstavljanje znakov, -p = ohrani izvirni niz, ] = upto in vključno, itd. Naredite pomoč za ukaze, da dobite podrobnosti. To so precej zmogljivi urejevalni ukazi.

Sen

 # ZAČETEK SCRIPTA # Deklariranje vhodnih argumentov. var str dir pattern # Zberite seznam datotek, ki ustrezajo vzorcu. var str list Najdi -f $ pattern $ dir> $ list # Seznam datotek je v seznamu $. Obdelajte eno za drugo. Medtem ko ($ list "") naredite # Pridobite naslednjo datoteko. var str datoteka, pot, old_name, new_name lex "1" $ list> $ file # Odstrani pot. To nam bo dalo samo ime datoteke v $ old_name. stex -p "^ / ^ l [" $ file> $ old_name # Po (vendar brez) zadnje / # Spusti prvih 7 znakov. chex -p "7]" $ old_name> $ new_name # Vstavi MSG_IN_ po 14 znakih. brada "14" "MSG_IN_" $ new_name> null # Uporabljamo> null, ker ne želimo videti izhoda # Želimo vstaviti MSG_IN_ v $ new_name (torej ne -p možnost). skript SS_SlashBack.txt ospath ($ file)> $ file # Preimenuj $ file v $ new_name sistem preimenuje $ file $ new_name # END OF SCRIPT 

Opomba

Hvala satya za ta nasvet na forumu.

Prejšnji Članek Naslednji Članek

Top Nasveti