Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Tiedostojen hakeminen

yogie [21.09.2012 21:20:42]

#

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

Grez [21.09.2012 21:44:52]

#

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

yogie [21.09.2012 22:07:23]

#

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.

Grez [22.09.2012 01:39:18]

#

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

-tossu- [22.09.2012 12:45:13]

#

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

yogie [22.09.2012 14:46:32]

#

heh, eipä tullut tuota perus rename komentoa mieleen. lähin hakemaan liian hankalaa ratkaisua. Kiitos taas.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta