Сцрипт басх: ​​копирајте нове слике са СД-а на рачунар

Понекад морамо да радимо понављајуће задатке на рачунару, који временом постају заморни. У одређеним случајевима можемо ублажити свој рад користећи скрипте које раде за нас.

Данас пишем да бих вам показао басх скрипту која је решила потребу: копирајте нове слике са мог дигиталног фотоапарата са СД картице на рачунар.

Ситуација:

Сваки пут када бих имао нове слике за преузимање на рачунар, урадио бих следеће:

1. Отворите директоријум где су слике класификоване у поддиректоријуме.

2. Направите нови поддиректоријум са именом тренутног датума у ​​формату ии.мм.дд

3. Пређите на поддиректоријум креиран претходни пут и погледајте која је последња сачувана слика.

4. Копирајте нове слике са СД картице у новостворени директоријум.

То траје не више од једног минута, али поступак је једноставнији уметањем картице.

Морам да користим картицу јер не могу директно да пренесем слике са фотоапарата преко УСБ-а, јер не постоје Линук управљачки програми (као што се увек догађа ...)

rešenje:

Направите басх скрипту која ради следеће:

1. Проверите да ли је СД картица монтирана при покретању. У супротном се завршава.

2. Идите у главни директоријум слика и пронађите последњи. Сачувајте своје име у променљивој.

3. Упоредите тренутни датум са последњим директоријумом, ако се разликују, направите нови директоријум са именом тренутног датума у ​​формату „ии.мм.дд“.

4. Померите се у последњи директоријум (не нови, већ старији) и сачувајте име последње датотеке која је пребачена претходни пут у променљиву.

У овом кораку је потребно филтрирати име датотеке да бисте је могли у блиској будућности упоређивати са новим датотекама на картици. Датотеке имају следећи формат: ккк_кккк.еее Где је: к = цифра од 0 до 9 и еее = продужетак (ЈПГ, МОВ). На пример: 100_5684.ЈПГ, 100_5699.МОВ. После филтера, име остаје ккккккк Према томе, у горњем примеру бисмо имали: 1005684, 1005699.

Будући да директоријум може садржати друге врсте датотека или са измењеним именима, користи се филтер.

5. Пређите на картицу и филтрирајте датотеке као у претходној тачки.

6. Упоредите датотеке на картици са променљивом која садржи последњу датотеку пренету претходни пут (тачка 4) и копирајте именоване датотеке у новостворени директоријум већи од променљиве. (пошто су имена само бројеви).

7. Отворите директоријум који садржи нове слике помоћу менаџера датотека.

Следеће ћу вам показати скрипту са коментарима који објашњавају како то функционише. Појашњавам да нисам програмер и задавао ми је неколико главобоља док нисам успео, нарочито када сам морао да филтрирам имена за петљу „фор“.

#! / бин / басх ### --- ПРОВЕРИТЕ ДА ЛИ СЕ НАМЕСТИ СД --- ### СД = / медиа / КОДАК / ДЦИМ / 100З8612 ако је [[-д $ СД]]; онда ### --- СТВОРИ ДИРЕЦТОРИ --- ### #Прочитајте директоријум слика и креирајте други са именом # тренутног датума и дозволама 755 ако не постоји. цд ~ / Слике / кодак УЛТДИР = `лс -1 | таил -н1` # последњи директоријум на листи. ДАТУМ = `датум +% г.% М.% Д` # Тренутни датум у ИИ.ММ.ДД формату ако [" $ ЛАСТДИР "! =" $ ДАТЕ "]; затим мкдир -вм 755`дате +% и.% м.% д` # креирај директоријум са тренутним датумом фи ### --- ВИДИ ПОСЛЕДЊУ ДАТОТЕКУ $ УЛТДИР --- ### цд $ УЛТДИР УЛТИМГ = `лс - 1 [0-9] [0-9] [0-9] _ [0-9] [0-9] [0-9] [0-9]. [ЈМ] [ПО] [ГВ] | реп -н1 | цут -ц1-3,5-8` # погледајте последњу слику са именом ккк_КСКСКСКС.еее .еее = екстензија датотеке (ЈПГ или МОВ) # Да бисте осигурали да скрипта ради након што је испуњена: # 100_9999.еее -> 101_0000. еее и нема грешака # ЦУТ тако да је у кккКСКСКСКС формату ### --- ПРЕМЕСТИТЕ СЕ ДО ПОСЛЕДЊЕГ ИМЕНИКА ЛИСТЕ --- ### # ИЛИ НЕДАВНО СТВОРЕНОГ, АКО ЈЕ # цд створен .. УЛТДИР = `лс -1 | таил -н1` # иде поново, јер у супротном треба претходни УЛТДИР иф цд / медиа / КОДАК / ДЦИМ / 100З8612 ### --- ФИЛТРИРАЈ датотеке у СД --- ### ФИЛТЕР = `лс -1 [ 0 -9] [0-9] [0-9] _ [0-9] [0-9] [0-9] [0-9]. [ЈМ] [ПО] [ГВ] `### - - УСПОРЕДИТЕ НОВЕ ДАТОТЕКЕ СА ИМЕНОМ ВЕЛИКИМ ОД ПОСЛЕДЊЕГ --- ### за И у $ ФИЛТЕР до Н = `ецхо $ И | исеци -ц1-3,5-8` # Исеци име ако [["$ УЛТИМГ" -лт "$ Н"]]; затим цп $ И ~ / Пицтурес / кодак / $ УЛТДИР фи доне тхунар ~ / Пицтурес / кодак / $ УЛТДИР #Отворите нови директоријум са Тхунар елсе екит 0 фи екит 0

Коначно, да би то функционисало, додао сам га у Ксфце-ову апликацију „Ремовабле Дривес анд Медиа“ у менију

Подешавања → Ксфце 4 Менаџер подешавања → Преносиве диск јединице и медији → Фотоапарати

користећи опцију увоза слике. Када уметнем картицу, у дијалошком оквиру се пита желим ли да увозим слике. Након прихватања, скрипта се извршава.

Па то је то. Извините на неуредности текста, то је мој први пост и не знам како да табеларно прикажем скрипту приликом његовог уређивања. Надам се да ће некоме бити корисно бар да има идеју и прилагоди је сваком конкретном случају.

Нисам лиценцирао јер нисам добро научио сваку верзију ГПЛ-а, али они је могу копирати и изменити. И не устручавајте се да кажете како би се то могло побољшати или постоје други начини да се то учини, али лакше.

Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   Перцафф_ТИ99 дијо

    Врло занимљив Јоакуин, добра идеја је да скрипту пренесете у пасте где је лакше делити код, а како кажете, може се прилагодити другим потребама и човек научи да мало више користи басх.

    Поздрав!

    1.    Јоакуин дијо

      Готово, додато у http://paste.desdelinux.net/4737
      Хвала!

  2.   вр_рв дијо

    Када копирате фотографију која се већ налази у директоријуму, то не значи да је већ постоји и даје вам могућност да је замените или не копирате?

    Свеједно је врло корисно, јер све ради аутоматски

    1.    Јоакуин дијо

      Здраво. Заправо не копира слике које се понављају, већ их само игнорише. Идеја је била управо да се нове датотеке копирају без потребе за интеракцијом корисника. Такође, ако слике не додате више од једном дневно, скрипта копира нове датотеке у нови директоријум. Објашњавам укратко:

      Данас је 10/03/13, креирам директоријум који се зове 13.03.10/100/4440 и копирам неке слике или видео записе (МОВ) унутра: 100_4441.ЈПГ, 100_4442.ЈПГ, 100_4445.МОВ, XNUMX_XNUMX.ЈПГ
      (4443 и 4444 који недостају избрисани су фотоапаратом, последњи је 4445).

      Онда претпоставим да користим скрипту 01. И да имам нове слике на картици. Скрипта креира директоријум под називом 04 и унутар нових слика / видео записа чији је назив већи од "13"; јер чита директоријум 13.04.01, а последња слика је 4445_13.03.10.ЈПГ. Ако истог дана поновим скрипту са новим сликама картица, оне се додају у директоријум 100. Ниједан није преписан.

      Надам се да сам мало разјаснио своју идеју 🙂

  3.   Манути дијо

    А не знате Рапид Пхото Довнлоадер? Мислим да ради све то и још више.

    1.    Мр Блацк дијо

      Ствар је у томе што је то мршави момак урадио сам, претпостављам да би се забавио и да може послужити неком другом

    2.    Јоакуин дијо

      Здраво. Нисам то знао и чини ми се добро према ономе што сам видео на интернету, али заправо скрипта савршено испуњава оно што ми треба; а то је уметање картице и аутоматско копирање свих датотека.

      Такође ми је помогло да научим мало више јер очигледно није успело први пут; Догодиле су се грешке и од њих се пуно научи.

      Нисам мислио показати скрипту за решавање проблема другима, постоје апликације попут оних које помињете и које су општије. Поделио сам га са вама за читање и као референцу за стварање нових ствари користећи петље (у овом случају „фор“) и регуларне изразе (променљиве „УЛТИМГ“ и „ФИЛТЕР“ у скрипти)

  4.   цоделаб дијо

    Изгледа корисно, чувам га у случају да ми једног дана затреба. Хвала вам.

    1.    Јоакуин дијо

      Хвала!

  5.   неименован дијо

    али за то већ имамо грсинц

    1.    Јоакуин дијо

      Да, али мислим да се рсинц више користи за израду резервних копија. Никад га нисам гледао, али то је апликација коју бисмо требали узети у обзир и учити од свих нас.

      Нисам знао да постоји графички интерфејс за рсинц.

  6.   ластневбие дијо

    Вау, налазим да је код веома занимљив, врло користан. само настави тако. 😀
    Задржаћу га у случају да ми затреба.

    Поздрав.

    1.    Јоакуин дијо

      Хвала вам!.