[XP] Batch: Juiste datum bij copy vanaf USB

Pagina: 1
Acties:

  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Ik sorteer de foto's uit m'n camera altijd op dezelfde manier, namelijk:

- map met "jaar-maand-dag onderwerp"
- daarin submap "RAW" met de RAW-bestanden

Het kopiëren vanaf m'n CF-kaartje (met cardreader) moest wel makkelijker kunnen met een batch-bestandje bedacht ik me, dus maar even wat in m'n geheugen gegraven naar DOS-commando's en wat opgezocht met Google.

Tot nog toe heb ik het volgende gebakken:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@echo off

set drivedst=%USERPROFILE%\Bureaublad
set drivesrc=H:\
set copycmd=xxcopy /sgf /c /d /h /i /r /k /y

FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET yyyy=%%B
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET mm=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET dd=%%B

SET folder=%dd%%mm%%yyyy% _evenement_

%copycmd% %drivesrc% "%drivedst%\%folder%\RAW"

format H: /q /y /v:Martijn

cls


Ik krijg nu een nieuwe map op m'n desktop en m'n geheugenkaartje wordt snel geformateerd en voorzien van m'n naam (handig als ie kwijt raakt). De nieuwe map bevat een map "RAW" met daarin zonder sub-mappen alle bestanden van het CF-kaartje. Alleen die nieuwe map heet vandaag dus bijvoorbeeld "21-09-2005 _evenement_".

Aangezien dit met sorteren niet handig is, zou ik dus willen dattie "2005-09-21 _evenement_" heet. Hoe zou ik dit op kunnen lossen?

  • Outerspace
  • Registratie: Februari 2002
  • Nu online

Outerspace

Moderator General Chat / Wonen & Mobiliteit

AFX Ghey Edition by HlpDsK

Ik heb verder weinig verstand van batchen, maar als je dit nou eens doet:
code:
1
SET folder=%yyyy%%mm%%dd% _evenement_


Dus dagen met jaren omwisselen :)
of kan dat niet :?

Zoekt nieuwe collega's (jr/sr engineers, servicedeskmedewerkers of managers in de Randstad)


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Vragen over batch-programmeren mogen in WOS :) Welk OS hebben we het hier over?

SA > WOS

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Ok, wist niet zeker waar ie heen moest. Het gaat hier om een Nederlandstalige Windows XP. Bij de Engelstalige versie klopt de datum wel, maar ik vind het toch net niet belangrijk genoeg om hiervoor m'n OS te wisselen. ;)

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Dan zet ik dat nog even in je topictitel :)

Juiste Datum Bij Batch-copy Vanaf USB > [XP] Batch: Juiste datum bij copy vanaf USB

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Wat Outerspace zegt zou prima moeten werken. Die pas ik vrijwel overal in batchfiles in wisselende samenstellingen toe :)

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Het geeft exact dezelfde output, of er nou %yyyy%%mm%%dd% of %dd%%mm%%yyyy% staat. :?

Verwijderd

ik geloof er geen zak van dat je dit zelf gescript hebt en dan zoiets simpels niet kan vinden.

je gaat hier zowieso uit van je eigen instellingen wat betreft tijds/datum weergave, dus het lijkt me handig om te laten zien hoe die is (echo %date%).

edit: zeker weten dat je dit niet zelf hebt gemaakt, want je delims is niet /.

[ Voor 61% gewijzigd door Verwijderd op 22-09-2005 14:16 ]


  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Hoho, zoals ik al zei heb ik het deels met Google bij elkaar gesprokkeld. Met echo %date% krijg ik nu do 22-09-2005, de Nederlandse datumaanduiding dus.

Verwijderd

dus wat is je delims?

zet ff na elke for statement een echo van de var.

vb. Echo wat is cdate: %cdate% (nu is yyyy leeg en mm ook en dd is cdate)

[ Voor 76% gewijzigd door Verwijderd op 22-09-2005 14:55 ]


  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Ok, ik ben eraan uit. Ik heb gewoon in het Configuratiescherm bij Landinstellingen de korte datumnotatie op jjjj-mm-dd gezet.

De code zelf kan trouwens ook veel simpeler, aangezien XP bekend is met %Date%. Het ziet er nu zo uit en doet precies wat ik wil:

code:
1
2
3
4
5
6
7
8
9
10
11
@echo off

set drivedst=%USERPROFILE%\Bureaublad
set drivesrc=H:\
set copycmd=xxcopy /sgf /c /d /h /i /r /k /y

%copycmd% %drivesrc% "%drivedst%\%Date% _evenement_\RAW"

format H: /q /y /v:Martijn

cls


Bedankt voor de hulp!

Verwijderd

lol, lekker handig die "do" in de naam. gebruik %date:~3%.

overigens kent nt4 de date var ook al en de systeem settings wijziging op de manier dat jij hebt gedaan is zeker niet slim (op je eigen machine zal het wel loslopen, maar zo'n simpele wijziging kan grote gevolgen hebben).

  • MartijnGizmo
  • Registratie: September 2004
  • Laatst online: 16:45

MartijnGizmo

Supercalifragilistic

Topicstarter
Ik krijg er geen "do" voor, echt alleen "2005-09-22 _evenement_" als mapnaam. En het is idd alleen op m'n eigen machine thuis.
Pagina: 1