Re: Batch - nazywanie pliku docelowego

Autor: Bula <bulax5_at_spamikpoczta.onet.pl>
Data: Wed 01 Feb 2012 - 17:50:50 MET
Message-ID: <jgbu1q.t0.1@www.czorty.pl>
Content-Type: text/plain; charset=UTF-8; format=flowed

>> @echo OFF
>> if exist "C:\temp\Scripts\Tests\target.cmd" (
>> cmd /c iconv.exe -t utf-8 source.txt>target.txt
>> exit
>> )
>> for /L %%A in (1,1,99) do (
>> if exist "C:\temp\Scripts\Tests\target(%%A).cmd" (
>> cmd /c iconv.exe -t utf-8 source.txt>target(%AA).txt
>> exit
>> )
>> )
>> taki szybki batch,
>
> Na moje oko to on nadpisze istniejący pliki zamiast stworzyć plik o
> nazwie, której nie ma. Trzeba by dorzucić operator not. Poza tym nie
> jest spełniony warunek, że jeśli istnieje 2 i 4 to robimy 5 a nie 3. No
> i cmd /c jest zbędne. Nie trzeba uruchamiać kolejnego shella. Z innych
> szczegółów to nie testujemy istnienia pliku cmd. W każdym razie jest
> jakiś punkt wyjścia.
>

Za pozno bylo na poprawki wczoraj :)
Fakt, o NOT zapomnialem, literowki typy cmd olewam :), Kazdy moze szybko
dopasowac sobie takie cos :D

@echo OFF

if not exist "C:\temp\Scripts\Tests\target.txt" (
        iconv.exe -t utf-8 source.txt>target.txt
        exit
        )

for /L %%A in (1,1,99) do (
        if not exist "C:\temp\Scripts\Tests\test%%A.txt" (
                iconv.exe -t utf-8 source.txt>target%%A.txt
                exit
        )
)

-- 
Pozdrawiam
Bula
Received on Wed Feb 1 17:55:02 2012

To archiwum zostało wygenerowane przez hypermail 2.1.8 : Wed 01 Feb 2012 - 18:42:00 MET