DOS nahradit všechny výskyty <filename> .config

hlasů
1

Mám upravenou verzi konfiguračního souboru specifické pro můj stroj. Mám stejný konfigurační soubor v několika různých adresářů ve své složce rozvoje. chci, v jediném souboru bat, nahradit všechny výskyty tohoto souboru se svým upravil jeden.

Takže pusedo kód: Vezměte C: \ edited.config a zkopírovat do složky C: \ Projects \ / s tam, kde je nalezen original.config

Chci konečný soubor má název original.config, ne edited.config

Takže jsem hádat i nutnost určité kombinaci FOR, přejmenování a kopírování nebo něco takového

Je to snazší dělat v PowerShellu?

může někdo pomoci? dík

Položena 27/08/2009 v 00:11
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
3

Jsem blogged o tom před chvílí na http://jamesewelch.com/2008/05/01/how-to-write-a-dos-batch-file-to-loop-through-files/

Myslím, že vaše řešení bude vypadat něco podobného (dole je nevyzkoušený, ale slouží k zobrazení obecnou představu)

for /f %%a IN ('dir /b *.config') do copy c:\master.config %%a

Tam je asi přepínač tam na kopii potlačit varování soubor přepsat, ale nepamatuji si, co je spínač. To bude kopírovat master.config a přepsat místní soubor (proměnnou %% a).

Odpovězeno 27/08/2009 v 00:17
zdroj uživatelem

hlasů
1
@echo off
C:
cd \Projects
FOR /F "tokens=*" %%G IN ('DIR /B /S original.config') DO xcopy /y c:\edited.config %%G
Odpovězeno 27/08/2009 v 00:29
zdroj uživatelem

hlasů
1

Divím se, co odborníci DOS dávkový soubor dělat práci. Vzhledem k tomu, že nejsem jedním z nich, beru přístup, který je pragmatičtější pro mě. Mohlo by to fungovat i pro vás.

  1. Získat seznam cílových složek

    C: Cd \ Dir original.config / s> original.bat

  2. Edit original.bat ve svém oblíbeném textovém editoru (já rád Notepad ++)

  3. Hledání „original.config“ a nahradit „“ (prázdný řetězec)

  4. Vložit text „Xcopy C: \ edited.config“ na přední straně každého řádku

  5. Důkaz-číst výsledek si být jisti, že je to, co chcete. Pokud si nejste jisti, dát „echo“ před každým řádkem pro sucho.

  6. Spusťte dávkový soubor.

Odpovězeno 27/08/2009 v 00:18
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more