{title}

Ich habe ein Stapelskript wie folgt. Jetzt möchte ich die CSV-Datei in das CSV-verarbeitete MM/JJ/JJJJ-Format umbenennen. Die aktuelle Umbenennung erfolgt im Format MM/TT/JJ. Außerdem möchte ich den Zeitstempel anhängen Diesbezügliche Hilfe wäre sehr dankbar: echo cd data Scriptsfor %% f in (D: data DELIVERY_NOTE .csv) Do (sqlldr USERID = config/config control = D: data Scripts loaddata_del. ctl skip = 2 data = %% f (echo conn config/config; echo exec DELIVERY_NOTE_PKG.PopNote_stage;) | sqlplus -s/nologmove %% f D: data Verarbeitete_Lieferung cd D: data Verarbeitete_Lieferung Umbenennung .csv .csv.processed_% date% cd d: data scripts echo ############ echo VERARBEITET DIE DATEI %% f AT% data%% time% echo ###### ######)

C: test> Geben Sie Folgendes ein: bang.batCode: @echo offrem cd D: data processing_Delivery cd c: testrem dir/b> csvfiles.txtset MM =% date: ~ 4,2% set DD =% date: ~ 7,2% set JJJJ =% date: ~ 10,4% echo MM =% MM% echo TT =% TT% echo JJJJ =% JJJJ% for/f %% i in (csvfiles.txt) do (copy %% i csv_processed_% MM %% TT %% JJJJ% dir/b csv_processed_% MM %% TT %% JJJJ% rem .csvecho VERARBEITET DIE DATEI %% i AT% date%% time% rem .csv_processed_mm/tt/jjjj format.) Ausgabe: C: test> bang.batMM = 06DD = 29YYYY = 2010 1 Datei (en) kopiert.csv_verarbeitet_06292010DATEI VERARBEITET timefile1.csv AM 06/29/2010 13: 07: 29.42 1 Datei (en) kopiert.csv_verarbeitet_06292010 THEP .csv AT Di 06/29/2010 13: 07: 29.42 1 Datei (en) kopiert .csv AT Di 06/29/2010 13: 07: 29.42C: test>

Der obige Beitrag (Antwort 1) enthielt nicht den ursprünglichen Dateinamen als Teil des endgültigen Dateinamens. Der folgende Code behebt diesen Fehler. ___________________________________ C: test> Typ bang.batCode: @echo offrem cd D: data processing_Delivery cd c: testrem dir/b .csv> csvfiles.txtset MM =% date: ~ 4,2% set TT =% date: ~ 7,2% set JJJJ =% date: ~ 10,4% echo MM =% MM% echo TT =% TT% echo JJJJ =% JJJJ% für/f %% i in (csvfiles.txt) do (Kopie %% i %% i_processed_% MM %% DD %% JJJJ% dir/b %% i_processed_ % MM %% TT %% JJJJ% rem del %% irem cd d: data scripts echo VERARBEITET DIE DATEI %% i AT% date%% time% rem .csv_processed_mm/dd/yyyy format.) Ausgabe: C: test> bang.batMM = 06DD = 29YYYY = 2010 1 Datei (en) kopiert.sdate.csv_processed_06292010DIE DATEI VERARBEITET sdate.csv AM Tue 06/29/2010 19: 31: 04.06 1 Datei (en) kopiert.stime. csv_processed_06292010PROCESSED THE FILE stime.csv AT Di 29.06.2010 19: 31: 04.06 1 Datei (en) copied.txtfile.csv_processed_06292010PROCESSED THE FILE txtfile.csv AT Di 29.06.2010 19: 31: 04.06C ps Ich konnte den obigen Beitrag nicht bearbeiten (Antwort eins).

Hallo

Hallo marvinengland, Danke für das Update. Es funktioniert. Ich habe noch ein Problem. Ich erstelle eine Protokolldatei mit dem sqlloader.ie., Sqlldr USERID = config/config control = D: data Scripts loaddata_del.ctl skip = 2 log = d: log log01.log data = %% fJetzt wird für jede Schleife eine log01.log-Datei generiert und daher überschrieben.So habe ich versucht, sie in log01.log __ umzubenennen mit dem einfachen Befehl copy .log .log.% DATE:/=% _% time :: =%. processeddel .log) Aber für jede Schleifeniteration, dh sobald die Schleife startet, bleibt der TIME STAMP für alle Wie kann ich damit umgehen? thx.

C: test> Geben Sie [email protected] offrem echo ein. > time.logrem dir/b> csvfiles.txtrem cd D: data processing_Delivery cd C: testset MM =% date: ~ 4,2% set TT =% date: ~ 7,2% set JJJJ =% date : ~ 10,4% echo MM =% MM% echo TT =% TT% echo JJJJ =% JJJJ% für/f %% i in (csvfiles.txt) do (copy %% i %% i_processed_% MM %% DD %% JJJJ% dir/b %% i_processed_% MM %% TT %% JJJJ% call: mklog %% irem del %% i) echo time.logtype time.loggoto: eof: mklog% 1sleep 6rem echo PROCESSED THE FILE% 1 AT% date%% time% echo VERARBEITET DIE DATEI% 1 AT% date%% time% >> time.logrem C: Programme Windows Resource Kits Tools sleep.exerem Wenn für jeden Zeitstempel eine Zeitverzögerung erforderlich ist, ping oder sleeprem verwenden Die Variable% time% ändert sich nur bei einem Aufruf eines Etiketts oder eines anderen Stapels. Ausgabe: C: test> bang.batMM = 07DD = 01YYYY = 2010 1 Datei (en) copied.timefile1.csv_processed_07012010 1 Datei (en) ) copied.timefile2.csv_processed_07012010 1 file (s) copied.timefile3.csv_processed_07012010 1 file (s) copied.timefile4.csv_processed_07012010time.logPROCESSED_07012010time.logPROCESSED THE FUED THE FUITED THE FILE 10 le2.csv AM Do 07/01/2010 10: 39: 32.17DIE DATEI VERARBEITET timefile3.csv AM Do 07/01/2010 10: 39: 38.19DIE DATEI VERARBEITET timefile4.csv AM Do 07/01/2010 10:39: 44.21C: test>

Verwenden Sie nicht Schlaf oder Ping. Zwischen jedem Zeitstempel liegt mindestens 1/100 Sekunde. Wenn viele CSV-Dateien vorhanden sind, wird der Stapel viel schneller ausgeführt. C: test> Geben Sie [email protected] offecho ein. > time.logrem dir/b .csv> csvfiles.txtrem cd D: data processing_Delivery cd C: testset MM =% date: ~ 4,2% set TT =% date: ~ 7,2% set JJJJ = % date: ~ 10,4% echo MM =% MM% echo TT =% TT% echo JJJJ =% JJJJ% for/f %% i in (csvfiles.txt) do (copy %% i %% i_processed_% MM% % DD %% YYYY% dir/b %% i_processed_% MM %% DD %% YYYY% call: mklog %% irem del %% i) echo time.logtype time.loggoto: eof: mklog% 1echo VERARBEITETE DIE DATEI% 1 AT% date%% time% >> time.logrem Die Variable% time% ändert sich nur bei einem Aufruf eines Etiketts oder eines anderen Stapels. Ausgabe: C: test> bang.batMM = 07DD = 01YYYY = 2010 1 Datei (en) kopiert .timefile1.csv_processed_07012010 1 Datei (en) kopiert. timefile2.csv_processed_07012010 1 Datei (en) kopiert. timefile3.csv_processed_07012010 1 Datei (en) kopiert. timefile4.csv_processed_07012010 53: 36.94VERARBEITETE DIE DATEI timefile2.csv AM Do 07/01/2010 15: 53: 36.95VERARBEITETE DIE DATEI timefile3.csv AM Do 07/01/2010 15: 53: 36.97VERARBEITETE DIE DATEI timefile4.csv AM Do 07/01/2010 15: 53: 36.98C: test>

Lauern Open-Supply-Verstöße in Ihrem Code?

IT-Organisationen, die sich vor Open-Source-Lizenzverletzungen sicher fühlen, sollten ihren Code überprüfen, da Open-Source-Komponenten schnell in Anwendungen eindringen, da Offshore- und Inhouse-Entwickler Open-Source-Verknüpfungen verwenden und die Zahl der Open-Source-Benutzer wächst -savvy Absolventen Eintritt in die Belegschaft. www.pcworld.com/businesscenter/icle/151196/article.html?tk=nl_baxnws

Heh, niemand ist paranoider als der gute alte Microsoft, da er nach den GNU-Vereinbarungen seine Software abgeben müsste, weil sie Open Source-Code enthält, oder so ähnlich.

Ich weiß. In einigen Jahren werden XP und Vista sowie alle anderen Betriebssysteme Open Source sein

Worauf gründen Sie diese Vermutung?

Er wollte wahrscheinlich neuere Versionen von Windows sagen. Aber er hat bereits angegeben, dass Microsoft wachsam nach dem Einstieg in Open Source-Code Ausschau hält. Ich glaube, er hat bereits seine eigenen Argumente unterdrückt. Ein bisschen off-topic, aber wenn Sie die DLL-Dateien und so weiter untersuchen Mit DUMPBIN oder einem ähnlichen Tool kann man herausfinden, wo sie ursprünglich kompiliert wurden. Ich habe es eine Weile nicht getan, aber ich erinnere mich, dass ich festgestellt habe, dass die Systemdateien von Windows 98 ursprünglich auf einem R: -Laufwerk in Redmond kompiliert wurden.

Sehr schön! Ich bin nicht so gut informiert wie einige andere, aber ich habe nichts gesehen, was darauf hindeutet, dass Microsoft beabsichtigt, ihre "Closed Source" -Architektur aufzugeben. Ich verstehe offensichtlich ihre Kostenstrukturen nicht, habe aber oft darüber nachgedacht Wenn sie Linux "töten" wollen (oder zumindest ernsthaft behindern), sollten sie ihre Software zu wirklich reduzierten Preisen verkaufen.

Beliebte Beiträge