Скрипт башы: жаңы сүрөттөрдү SD дан ЖКга көчүрүү

Кээде биз убакыттын өтүшү менен жадатма болуп турган ПКда кайталанган тапшырмаларды аткарышыбыз керек. Айрым учурларда өзүбүзгө ылайыктуу скрипттерди колдонуп, ишибизди жеңилдете алабыз.

Бүгүн мен сизге муктаждыкты чечкен баш скриптин көрсөтүү үчүн жазып жатам: санарип камерамдан жаңы сүрөттөрдү SD картадан PCге көчүрүү.

Абал:

Компьютерге жүктөп алуу үчүн жаңы сүрөттөр пайда болгон сайын, мен төмөнкүлөрдү жасайм:

1. Менде каталогдордо классификацияланган сүрөттөр бар каталогду ачыңыз.

2. Учурдагы датанын аталышы менен, yy.mm.dd форматында жаңы суб-каталог түзүңүз

3. Мурунку убакытта түзүлгөн подкаталогго өтүп, акыркы сүрөт кандай сакталганын көрүңүз.

4. Жаңы сүрөттөрдү SD картадан жаңы түзүлгөн каталогго көчүрүңүз.

Бул бир мүнөттөн ашык убакытты талап кылбайт, бирок процессти картаны салып эле жасоо оңой.

Мен картаны колдонушум керек, анткени мен сүрөттөрдү камерадан USB аркылуу түз өткөрүп бере албайм, анткени Linux драйверлери жок (ар дайымкыдай эле ...)

чечим:

Төмөнкүлөрдү аткара турган баш скриптин түзүңүз:

1. SD карта орнотулган болсо, ишке киргенде текшерип алыңыз. Болбосо ал бүтөт.

2. Сүрөттөрдүн негизги каталогуна өтүп, акыркысын табыңыз. Өз атыңызды өзгөрмө менен сактаңыз.

3. Учурдагы датаны акыркы каталог менен салыштырып көрүңүз, эгер алар айырмаланса, анда учурдагы датанын аталышы менен "yy.mm.dd" форматындагы жаңы каталог түзүңүз.

4. Акыркы каталогго өтүңүз (жаңысы эмес, эскиси) жана мурунку жолу которулган акыркы файлдын аталышын өзгөрмө менен сактап коюңуз.

Бул кадамда файлдын аталышын чыпкалоо керек, аны жакынкы келечекте картадагы жаңы файлдар менен салыштырып көрө аласыз. Файлдар төмөнкү форматка ээ: XXX_xxxx.eee Бул жерде: x = 0дөн 9га чейинки цифра жана eee = кеңейтүү (JPG, MOV). Мисалы: 100_5684.JPG, 100_5699.MOV. Чыпкадан кийин аты ХХХХХХХ бойдон калат Демек, жогоруда келтирилген мисалда бизде: 1005684, 1005699.

Каталог файлдардын башка түрлөрүн камтыгандыктан же аталышы өзгөртүлгөндүктөн, чыпка колдонулат.

5. Картага өтүп, файлдарды мурунку пункттагыдай чыпкалоо.

6. Карточкадагы файлдарды мурунку убакытта берилген акыркы файлды камтыган өзгөрмө менен салыштырыңыз (4-пункт) жана аталган файлдарды жаңы түзүлгөн каталогго көчүрүңүз өзгөрмө чоң. (ысымдар жөн гана сандар болгондуктан).

7. Жаңы сүрөттөрдү камтыган каталогду файл менеджери менен ачыңыз.

Төмөндө мен анын иштешин түшүндүргөн комментарийлер менен сценарийди көрсөтөм. Мен программист эмес экенимди түшүндүрүп берем, жана ал иштегенге чейин бир нече жолу башымды оорутту, айрыкча, "for" циклинин аттарын чыпкалап жатканда.

#! / bin / bash ### --- SD ОРНОТУЛСА ТЕКШЕРҮҮ --- ### SD = / media / KODAK / DCIM / 100Z8612, эгерде [[-d $ SD]]; анда ### --- ДИРЕКТОРДУ ТҮЗҮҮ --- ### # Сүрөттөрдүн каталогун окуп, ал жок болсо, # учурдагы датасы жана уруксаттары 755 деген аталыш менен башкасын түзүңүз. CD ~ / Сүрөттөр / kodak ULTDIR = `ls -1 | tail -n1` # тизмедеги акыркы каталог. DATE = `дата +% y.% M.% D` # Учурдагы күн YY.MM.DD форматында, эгерде [" $ LASTDIR "! =" $ DATE "]; андан кийин mkdir -vm 755` датасы +% y.% m.% d` # учурдагы датасы менен каталог түзүү ### --- $ ULTDIR АКЫРКЫ ФАЙЛЫН КӨРҮҢҮЗ --- ### cd $ ULTDIR ULTIMG = `ls - 1 [0-9] [0-9] [0-9] _ [0-9] [0-9] [0-9] [0-9]. [JM] [PO] [GV] | куйрук -n1 | -c1-3,5-8` # xxx_XXXX.eee .eee = файл кеңейтүүсү (JPG же MOV) деген аталыштагы акыркы сүрөттү караңыз # Сценарий аткарылгандан кийин иштешин камсыз кылуу үчүн: # 100_9999.eee -> 101_0000. eee жана эч кандай каталар жок # CXXXXXX форматында болсун деп # КЕСЕ # - # ТИЗМЕНИН АКЫРКЫ ДИРЕКТОРУНА ӨТҮҢҮЗ --- ### # ЖЕ ЖАКЫНДА ТҮЗҮЛГӨН, # CD түзүлүп калса .. УЛТДИР = `ls -1 | tail -n1` # дагы бир жолу өтөт, анткени болбосо if cd / media / KODAK / DCIM / 100Z8612 ### --- SD файлдарды ЧЫПКАЛА --- ### FILTER = `ls -1 [ULTDIR] 0 -9] [0-9] [0-9] _ [0-9] [0-9] [0-9] [0-9]. [JM] [PO] [GV] `### - - ЖАҢЫ ФАЙЛДАРДЫ АКЫРКЫСЫ МЕНЕН САЛЫШТЫР --- ### I үчүн $ FILTER do N = `echo $ I | кесүү -c1-3,5-8` # Кесүү аты, эгерде [["$ ULTIMG" -lt "$ N"]]; анда cp $ I ~ / Pictures / kodak / $ ULTDIR fi done thunar ~ / Pictures / kodak / $ ULTDIR # Thunar менен жаңы каталогду ачыңыз exit 0 fi чыгуу 0

Акыры аны иштетүү үчүн менюдагы Xfceдин "Алынуучу дисктер жана медиа" тиркемесине коштум

Жөндөөлөр → Xfce 4 Жөндөөлөр Менеджери → Алына турган Дисктер жана Медиа → Камералар

импорттук сүрөт параметрин колдонуп. Картаны салганда, диалог терезеси сүрөттөрдү импорттоону каалаймбы деп сурайт. Кабыл алууда сценарий аткарылат.

Мейли ал. Тексттин башаламандыгы үчүн кечиресиз, бул менин биринчи билдирүүм жана сценарийди түзөтүүдө кантип таблицага киргизүүнү билбейм. Кимдир бирөө үчүн жок дегенде идея болушу жана аны ар бир конкреттүү учурга ылайыкташтыруусу пайдалуу деп үмүттөнөм.

Мен лицензия алган жокмун, анткени мен GPLдин ар бир версиясы жөнүндө өзүмө жакшы маалымат бере элекмин, бирок аны көчүрүп алуу жана өзгөртүү мүмкүнчүлүгү бар. Жана аны кантип өркүндөтсө болот же ушул сыяктуу башка, бирок жеңилирээк жолдору бар болсо, айта бериңиз.

Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

13 комментарий, өзүңүздүкүн калтырыңыз

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.

  1.   Percaff_TI99 ал мындай деди:

    Абдан кызыктуу Хоакин, сценарийди кодду бөлүшүү оңоюраак жерге, жана сиз айткандай, аны башка муктаждыктарга ылайыкташтырууга болот жана башкасын дагы бир аз көбүрөөк колдонууну үйрөнүп алсаңыз болот.

    Салам !!!

    1.    Joaquin ал мындай деди:

      Бүттү, кошулду http://paste.desdelinux.net/4737
      Рахмат!

  2.   vr_rv ал мындай деди:

    Каталогдо бар сүрөттү көчүрүп жатканда, ал буга чейин бар экендигин көрсөтпөйт жана аны алмаштыруу же көчүрбөө мүмкүнчүлүгүн берет?

    Кандай болсо дагы, бул абдан пайдалуу, анткени ал баарын автоматтык түрдө жасайт

    1.    Joaquin ал мындай деди:

      Салам. Ал иш жүзүндө кайталанган сүрөттөрдү көчүрбөйт, аларды көрмөксөнгө салат. Колдонуучулардын өз ара аракеттенүүсүз эле жаңы файлдарды көчүрүп алуу идеясы болгон. Ошондой эле, сиз бир күндө бир нече жолу сүрөт кошпосоңуз, скрипт жаңы файлдарды жаңы каталогго көчүрөт. Мен кыскача түшүндүрөм:

      Бүгүн 10/03/13, мен 13.03.10/100/4440 деп аталган каталог түзүп, ичиндеги сүрөттөрдү же видеону (MOV) көчүрүп алам: 100_4441.JPG, 100_4442.JPG, 100_4445.MOV, XNUMX_XNUMX.JPG
      (Жоголгон 4443 жана 4444 камера менен өчүрүлдү, акыркысы 4445).

      Андан кийин мен сценарийди 01/04/13 күнү колдоном жана картада жаңы сүрөттөр бар деп коёлу. Скрипт 13.04.01 деп аталган каталогду жана аты "4445" ден чоңураак болгон жаңы сүрөттөрдүн / видеолордун ичинде түзөт; анткени ал 13.03.10 каталогду окуйт жана акыркы сүрөт 100_4445.JPG. Эгерде ошол эле күнү картадан жаңы сүрөттөр менен сценарийди кайталасам, алар 13.04.01 каталогуна кошулат. Эч бири жазылбайт.

      Мен өз оюмду бир аз тактадым деп үмүттөнөм🙂

  3.   Манути ал мындай деди:

    Rapid Photo Downloader программасын билбейсизби? Менин оюмча, мунун бардыгы жана башкалар.

    1.    Mr black ал мындай деди:

      Кеп арык жигиттин өзү жасагандыгы, ал менин оюмча көңүл ачып, башка бирөөгө кызмат кылышы мүмкүн

    2.    Joaquin ал мындай деди:

      Салам. Мен аны билген эмесмин жана интернеттен көргөндөрүм жакшы окшойт, бирок чындыгында сценарий мага керектүү нерселерди толугу менен аткарат; бул картаны салып, бардык файлдарды автоматтык түрдө көчүрүп алуу.

      Бул мага дагы бир аз көбүрөөк үйрөнүүгө жардам берди, анткени биринчи жолу иштебегени анык; Катачылыктар болуп, алардан көп нерсени билүүгө болот.

      Башкаларга көйгөйлөрдү чечүү үчүн сценарийди көрсөтөйүн деген оюм болгон эмес, сиз айткан программалар сыяктуу жалпы мүнөздөгү тиркемелер бар. Мен сизге окуп берүү үчүн жана илмек катары жаңы нерселерди жаратуу үчүн (бул учурда "for") жана туруктуу сөз айкаштарын (сценарийдеги "ULTIMG" жана "FILTER" өзгөрмөлөрү) бөлүштүм.

  4.   codelab ал мындай деди:

    Бул пайдалуу окшойт, бир күнү керек болуп калса сактайм. Рахмат сага.

    1.    Joaquin ал мындай деди:

      Рахмат!

  5.   атсыз ал мындай деди:

    бирок ал үчүн бизде буга чейин grsync бар

    1.    Joaquin ал мындай деди:

      Ооба, бирок rsync камдык көчүрмө үчүн көбүрөөк колдонулат деп ойлойм. Мен буга чейин эч качан караган эмесмин, бирок бул колдонмону эске алып, бардыгыбыздан үйрөнүшүбүз керек.

      Rsync үчүн графикалык интерфейс бар экенин билген эмесмин.

  6.   акыркы жаңылык ал мындай деди:

    Ой, мага кодек абдан кызыктуу жана абдан пайдалуу. уланта бер. 😀
    Керек болсо сактайм.

    Салам.

    1.    Joaquin ал мындай деди:

      Рахмат сага!.