Bash skripti

automatisointia

Miten bashilla pystyy kopioimaan kuvat hakemistosta toiseen pienemmässä koossa?

Eli minulla on hakemisto, missä on valokuvat ja pitäisi kopioida ne toiseen paikkaan (sama hakemistorakenne kuin alkuperäisessä paikassa), mutta valokuvien koko pitäisi olla 640x480.

Esim:

Kuvat (päähakemisto)
> Lomakuvat (alihakemisto)
> Työkuvat
> Perhe
> Joulu

Ja ne kopioidaan hakemistoon Webkuvat (missä olisi sama hakemistorakenne kuin Kuvat hakemistossa.

Parasta tietenkin jos bash skripti osaisi tarkistaa, onko pikkukuva jo olemassa, jos ei niin se luodaan, eli skriptilla pystyisi myös päivittämään sisällön, luomatta kaikkia kuvia joka kerta uudestaan. (sillä kuvia on tosi paljon)

Eli hakemistot pidettäisiin synkässä, toisessa hakemistossa isot kuvat ja toisessa pienet. Ja uudet kuvat lisätään tietenkin vain hakemistoon, missä on isot kuvat.

15

177

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Imagemagicin convertilla pitäis onnistua muuttamaan. Sitten ihan normaalia bash silmukkaa ja tarkistusta onko tiedosto olemassa ja vertailee päiväyksiä.

    • Tässä jotain jolla pääset alkuun. Pistä polut sun muut oman maun ja tarpeen mukaan. En ota mitään vastuuta jos jotain menee poskelleen. Kehitys varaa varmaan löytyy.

      Rivi1: Kopioi "Kuvat" kansiosta uudet kuvat kansioon "Kuvat1".
      Rivi2: Tekee kuvista log.txt tiedoston.
      Rivi3: Siirtää log.txt tiedoston sisällön muuttujaan FILES.
      Rivi4: Suorittaa kuvien koon muuttamisen.

      cp -Ru ~/Kuvat ~/Kuvat1
      find ~/Kuvat1 -type f -name "*.JPG" > log.txt
      FILES=$(cat log.txt)
      for FILE in $FILES; do convert $FILE -resize 640x480 $FILE; done

      • logistiiikkaa

        Vähän huono, kun puuttuu äly. Parempi olisi jos:

        dir1=./kuvat
        dir2=./thumbnails

        1. Poista vanhat pikkukuvat: Jos dir2 sisältää hakemiston joka puuttuu dir1:sta, niin poista se ja sen sisältö
        2. Luo uudet hakemistot: Jos dir1 sisältää hakemiston, joka puuttuu dir2:sta, niin luo se
        3. Luo uudet thumbnails: Käy läpi kaikki dir1 alihakemistojen tiedostot, tarkista onko samanniminen tiedosto dir2 hakemistossa. Jo on älä tee mitään. Jos ei ole niin luo thumbnail.

        Miten se koodataan en tiedä.


      • logistiiikkaa kirjoitti:

        Vähän huono, kun puuttuu äly. Parempi olisi jos:

        dir1=./kuvat
        dir2=./thumbnails

        1. Poista vanhat pikkukuvat: Jos dir2 sisältää hakemiston joka puuttuu dir1:sta, niin poista se ja sen sisältö
        2. Luo uudet hakemistot: Jos dir1 sisältää hakemiston, joka puuttuu dir2:sta, niin luo se
        3. Luo uudet thumbnails: Käy läpi kaikki dir1 alihakemistojen tiedostot, tarkista onko samanniminen tiedosto dir2 hakemistossa. Jo on älä tee mitään. Jos ei ole niin luo thumbnail.

        Miten se koodataan en tiedä.

        Valitettavasti yläpito poistaa ohjeen, se tais sitten jäädä tähän. Koita keksiä itse.
        Tein jotakin, ja laitoin tuohon, mutta poistivat sen. Asia ei ratkea ihan parilla rivillä, mikä lie täällä se raja, missä pätkissä voi esimerkkikoodia jakaa.

        Ei mielestäni sisältänyt mitään sääntöjen vastaista. Kuten ei edellinenkään, mutta tuon kuitenkin jättivät, miksiköhän.


    • Imagemagicin scriptejä löytyy paljon netistä. Gimppiin löytyy myös plugin tuohon. Nautilukseen ja moneen muuhun tiedostonhallintaan myös. convert osaa kyllä myös terävöinnin ja metadatan poiston. Metadata kannattaa usein poistaa. Kuva voi sisältää kuvankäsittelyohjelman historian, tekijätietoja, väriprofiilin ja tietysti tiedot kamerasta ja kenties sijaintitiedot. Muuten hyviä yritelmiä, mutta pystykuvien käsittely uupuu.

      • yssinkertaista

        Nautiluksen(Tiedostot) hakutoiminto osaa klikkaamalla näyttää "Koko" ja siihen ne mahdolliset duplikaatit ilmestyy rivi riviltä riippumatta tiedostonimestä ;)


    • "Muuten hyviä yritelmiä, mutta pystykuvien käsittely uupuu."
      Pitäskö minun tuntea siitä syyllisyyttä, kun kysyjä antaa tarkat mitat.

      Ja kysyjälle vielä:
      Jos sinulla on jokin toinen palvelu kuin tämä Suomi24, niin kerro, voimme jatkaa asian käsittelyä siellä.

      • "Pitäskö minun tuntea siitä syyllisyyttä, kun kysyjä antaa tarkat mitat."
        Ei, mutta convert ei ota muistaakseni huomioon pystykuvia.


      • Mikko_Tku kirjoitti:

        "Pitäskö minun tuntea siitä syyllisyyttä, kun kysyjä antaa tarkat mitat."
        Ei, mutta convert ei ota muistaakseni huomioon pystykuvia.

        Millä tavalla sen pitäisi muuttaa kuvan koko pystykuvissa. Silloin kun tilanne on sellainen että on mukana molempia, suoritetaan käsky ilman toista mittaa:

        convert c.JPG -resize 640 d.JPG

        jolloin kuvan koko muuttuu annettuun mittaan sidotusti.


    • HAHAHAHAHAHAHAHA

      Onpas säätämistä. Photoshopissa on valmiina batch converter. Mikse ette käytä sitä?
      EHHEHE! EHHEHE! BUAHHAH!

      • Suomi24 soveltuu yksin omaan juuri tuollaiseen vittuiluun. Jos yrittää auttaa jota kuta, niin ylläpito poistaa ohjeet, mutta ilmeisesti, juuri tämän kaltaiset viestit on sitä minkä kuvan Suomi24 haluaa välittää kansalaisistaan.

        Ja sitten "HAHAHAHAHAHAHAHA"lle
        "batch converter" saattaa olla monessa muussakin ohjelmassa. Mutta mitä siitä nauttii toisen tekemästä. Se että tuntee ja tietää osaavansa silloinkin kun ei joku ole asiaa valmiiksi tehnyt ja saa sen siitä huolimatta tehtyä, on jotain mistä kannattaa olla itseensä tyytyväinen, ei siitä että Photoshopissa on on jotain.


      • hehoh

        Herneet pois nenästä. Itse olen käyttänyt ja testaillut eri linuxeja ja lopputulema on että siinä ajassa minkä linux vie säätämisessä ja ongelmien selvittelyssä niin Windowsilla ja siihen saatavilla oikeilla ohjelmilla säästää senkin ajan työntekoon tai harrastuksiin. Pyörää ei kannata aina uudelleen keksiä. Jos tykkäät säätämisestä niin mikäs siinä sitten.


      • hehoh kirjoitti:

        Herneet pois nenästä. Itse olen käyttänyt ja testaillut eri linuxeja ja lopputulema on että siinä ajassa minkä linux vie säätämisessä ja ongelmien selvittelyssä niin Windowsilla ja siihen saatavilla oikeilla ohjelmilla säästää senkin ajan työntekoon tai harrastuksiin. Pyörää ei kannata aina uudelleen keksiä. Jos tykkäät säätämisestä niin mikäs siinä sitten.

        Näinhän se on, minä vaan tykkään siitä että minä itse osaan. En osaa nauttia siitä että Photoshopin kehittäjät osaavat. Jos se vaatii pyörän keksimistä, minä keksin kyllä sen, sitä suurempi syy kulkea rinta rottingilla.


    • bickdick

      converter yms. komennolla onnistuu.
      Löytyy myös niitä ikkunaohjelmia, jos ei tehokkuus/toistuvuus ole esteenä.

    • "Onpas säätämistä. Photoshopissa on valmiina batch converter. Mikse ette käytä sitä?"
      Photoshop on kallis yksinkertaiseen työhön. Kuten edellä kerroin se onnistuu monellakin
      tapaa. Ihan tiedostonhallinnalla. https://forum.kde.org/viewtopic.php?f=83&t=109906

      ImageMagicin convert osaa poistaa myös metadatan, lisätä vesileiman, terävöittää, ,,, mitä nyt haluaa. Photoshop taas lisää kuviin metadataa.... Monissa yrityksissä on kielletty monien ohjelmien dokumenttien lähettäminen koska metadatassa voi olla vaikka mitä tietoja.

    Ketjusta on poistettu 3 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Oletko kertonut jo muille tunteistasi?

      Ystävillesi esimerkiksi? Minä en ole vielä kertonut kenellekään tästä meidän jutusta.
      Ikävä
      77
      4422
    2. Kesä, kesä!

      Veikkaan, ettet juuri nyt ikävöi minua, ehket enää koskaan? Näkemättömyys on laimentanut tunteet, ja katselet iloisena k
      Tunteet
      11
      2333
    3. Olisin ottanut sinusta akan itselleni

      Mutta olitkin aika itsepäinen ja hankala luonne.
      Ikävä
      168
      1517
    4. Miksi sanotaan että Suomella on suuri armeija, tykistö jne.

      Asioita tarkemmin seuranneet tietävät että tuolla Ukrainassa palaa kuukaudessa sen verran mitä Suomella on kokonaisuudes
      Maailman menoa
      243
      1456
    5. Ei sua pysty unohtamaan

      Ei vaan yksinkertaisesti pysty
      Ikävä
      121
      1311
    6. Pitikö mennä rakastumaan

      Oi kyllä, kyllä piti. Kiitos vaan sulle mies! Todella kiitän..
      Ikävä
      115
      1237
    7. Miksi nuori ottaa hatkat? Rajut seuraukset: seksuaalinen hyväksikäyttö, väkivalta, huumeet...

      Lastensuojelu on kriisissä ja nuorten ongelmat kasvussa Suomessa. Hatkaaminen tarkoittaa nuoren luvatta poistumista omil
      Maailman menoa
      72
      1149
    8. Shokki! Suuri seikkailu -kisassa todellinen jättiyllätys - Tämä muutos järkyttää varmasti monia!

      No nyt on kyllä aikamoinen ylläri, peli todellakin kovenee…! Lue lisää: https://www.suomi24.fi/viihde/shokki-suuri-seik
      Viihde ja kulttuuri
      8
      1126
    9. Mitä tai ketä kaivattusi

      muistuttaa?
      Ikävä
      61
      1048
    10. Hei, huomenta komistus

      Yllättääkö, että olet heti mielessä. Mukavaa päivää upea ❤️
      Ikävä
      35
      956
    Aihe