2012-12-05 2 views
-1

좋은 스크립트를 찾는 데 2 ​​주가 소요되었습니다. 내가 대본을 발견했다는 생각이 들었을 때 직장에서 바뀐 것보다. 나는이 스크립트가 필요하다. 누군가가 나를 도울 수 있기를 바랍니다.텍스트 바꾸기 텍스트를 추가하지만 파일 이름을 유지하십시오.

매일 가변 파일 이름이 날짜와 함께 다운로드됩니다. 어제의

예제 파일 : currency1.20121205

지금 내가 가진 박쥐 파일을 실행합니다 ren C:\blp\bbdl\_csv\* *?.csv

파일 이름은 이제

2 가지가 있습니다 currency1.20121204.csv입니다 발생 :

  1. 파일 내부의 텍스트 변경 : 마지막에 텍스트를 추가 USD
  2. 는 (나는 이것에 대한 스크립트를 발견하지만, 처음에 EUR 작동하지 않습니다) 추가

텍스트 : EUR CMPN Curncy | 0 | 4 | EUR을 | | Composite (NY) | 1.00000 |

인터넷에서 보았던 대부분의 스크립트는 파일 이름을 변경하지만 이는 동일하게 유지되어야합니다. 배치에서

답변

0

이 뭔가를 시도 할 수 :

setlocal EnableDelayedExpansion 

cd C:\blp\bbdl\_csv 

for %%f in (*) do (
    set file=%%f 
    for /f %%l in (!file!) do (
    set line=%%l 
    echo !line:EUR=USD! >> "!file!.csv" 
) 
    echo EUR CMPN Curncy^|0^|4^|EUR^|^|Composite(NY)^|1.00000^| >> "!file!.csv" 
) 

endlocal 

하지만, VBScript로 할 쉬울 것 :

Set fso = CreateObject("Scripting.FileSystemObject") 

For Each f In fso.GetFolder("C:\blp\bbdl\_csv").Files 
    text = f.OpenAsTextStream().ReadAll 
    Set f2 = fso.OpenTextFile(f.Path & ".csv", 2, True) 
    f2.WriteLine Replace(text, "EUR", "USD") 
    f2.WriteLine "EUR CMPN Curncy|0|4|EUR||Composite(NY)|1.00000|" 
    f2.Close 
Next 

을 모두 코드가 내 머리 위로 떨어져 니펫, 그래서 검증되지 않은.

+0

VBScript를 사용할 수 있습니다. 스크립트로 테스트했지만 한 파일 만 편집해야하고 네 파일은 편집 할 필요가 없습니다. 파일 4 개 모두에 라인이 추가되고 유로화로의 유로가 변경됩니다. currency1.???????.csv를 편집해야했습니다. 에 ?? 날짜가 있습니다. 변수가 있습니다. 응답을 기다리는 중 – user1863225

+0

편집 할 * * * 파일을 정의해야합니다. 이 파일을 다른 파일과 구분 짓는 것은 무엇입니까? 파일 이름의 날짜 부분일까요? 다른 건 없니? –

+0

Ansgar, 어떻게 그 파일을 정의 할 수 있습니까? 나는 그것을 읽을 수있는 스크립트가있는 프로 아니지만 어떻게 해야할지 모르겠다. 어쩌면이 텍스트를 편집하려고 시도합니다 = f.OpenAsTextStream(). ReadAll – user1863225

관련 문제