Nyt tarvis kiirusti apuja. Mulla on hakemistossa 100 000 kuvaa, jotka on nimetty seitsemän numeroisella tunnuksella esim. 1234567.jpg. Mulla on csv tiedostossa 3000 kuvan nimi, jonka perusteella pitäisi etsiä tuosta 100 000 kuvan joukosta ne 3000 ja siirtää toiseen hakemistoon. Saan kyllä tehtyä tuosta tiedostosta muutaman ison haku lausekkeen esim. '1234567' or '7654321' jne, mutta windows ei tue niin pitkiä haku lausekkeita.
Miten saisin nämä etsittyä helpoiten? onko tällaiseen olemassa jotain valmiita ohjelmia tai osaisko joku neuvoa jonkun scriptin miten saisin tämän tehtyä. Apu olisi todella tarpeen
Jos oletetaan vaikka että tiedoston nimi on csv:n kunkin rivin ensimmäinen tieto
ja listatiedoston nimi on lista.csv, niin tee vaikka siirto.cmd tiedosto, jossa
FOR /F "tokens=1 delims=, " %%i in (lista.csv) do @move %%i toinenkansio\%%i
Sitten vaan ajat sen siirto.cmd:n
juuri näin eli tiedoston nimi on aina rivin ensimmäisenä. Täytyypä testata tuota. Kiitos paljon avusta. Laitan kohta tietoa miten onnistui
Lisäys: hyvin toimii. Kiitoksia.
Lisäys: Mitenkäs se muuten tapahtuu, jos haluan lisätä tuohon toiseen hakemistoon siirron yhteyteen kuvan uudellen nimeämissäännön esim. kun kuva 1234567.jpg siirretään toiseen hakemistoon ja se uudelleen nimetään 1234567_picture.jpg eli kaikkin kuviin tulisi tuo _picture perään.
Loppuun olisi helppo lisätä, mutta tuohon väliin hankalampaa.
Melkeinpä (jos kaikkien pituus on tuo 7 numeroa) niin ajaisin vain kohdehakemistossa
rename ???????.jpg ???????_picture.jpg
Saahan tuon _picture-osan nimen keskellekin melko helposti näin
FOR /F "tokens=1 delims=, " %%i in (lista.csv) do @move %%i toinenkansio\%%~ni_picture%%~xi
heh, eipä tullut tuota perus rename komentoa mieleen. lähin hakemaan liian hankalaa ratkaisua. Kiitos taas.
Aihe on jo aika vanha, joten et voi enää vastata siihen.