Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.

Autor Téma: Roztřídění souborů po obnově dat z Photorec... [vyřešeno]  (Přečteno 4814 krát)

RRRadek Neužil

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • Závislák
  • ******
  • Příspěvků: 4656
    • Zobrazit profil
Občas obnovuji data pomocí programu Photorec a jak jistě už mnozí z vás víte tak obnovené soubory jsou namixované v různých podadresářích.

Nastane situace kdy mám složku a v ní 100 tisíc souborů v podsložkách ./obnova_dat/recup_dirXXX/  XXX jsou čísla složek. Chtěl bych ale mít vše seřazené ve složkách podle typu souboru. mp3 ve složce MP3 atd...

Potřeboval bych vytvořit "skript/program" který proskenuje složku a podsložky a když nalezne třeba soubor s koncovkou mp3 tak se mrkne ven třeba do složky ../Obnova_dat_roztrideno/ zda se zde nenachází složka MP3 a do ní soubor přesune, v případě že by se tam složka nenacházela tak by složku vytvořil.

Je vůbec něco takového možné? Věděl by někdo jakým způsobem se do toho vrhnout, Bash skript nebo programovat v nějakém jazyce?
« Poslední změna: 03 Listopad 2012, 15:30:00 od RRadek Neužil »
PS: omluvte moji češtinu není to moje silná stránka, snažím se hlavně vystihnou podstatu problému. ;)

Tadeáš Pařík

  • Předseda občanského sdružení Ubuntu ČR a člen placené komunitní podpory
  • Guru
  • *****
  • Příspěvků: 6547
    • Zobrazit profil
    • Ubuntu.cz
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #1 kdy: 03 Listopad 2012, 12:18:51 »
Ok, tak jak jsme se bavili po jabberu, já šel na to takto:

Kód: [Vybrat]
ls -lR > test.ods
V calcu jsem to nechal bez formátování.

Pomocí funkce right vezmu poslední 4 znaky:

Kód: [Vybrat]
=right(číslo_buňky;4)
Na sloupeček s výstupem s koncovkami (samozřejmě tam mohou být i jiná data) aplikovat filtr a vyzobat si koncovky (na 70 tisících souborech práce na cca 5 minut).

Pak už si můžu udělat pivotky, grafy, prostě co hrdlo ráčí a mám hotovou analýzu  ;)

Do života je třeba mít připravený rozum, nebo provaz.

Ubuntu 14.04 64 bit / Windows 10 Pro - Intel DH87MC, Intel Core i7-4771, 8GB Ram, Kingston HyperX 3K SSD 120GB, Intel HD 4600 a ASUS GTX660-DC2OCPH-2GD5
Ubuntu 14.04 64bit - HP ProBook 4525s
Ubuntu 14.10 32bit - ThinkPad R52 (testování)

pariktadeas@jabbim.cz

RRRadek Neužil

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • Závislák
  • ******
  • Příspěvků: 4656
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #2 kdy: 03 Listopad 2012, 12:24:31 »
@Tadeáš > Ok budu to zatím brát jako plán "B", tzn že bych udělal analýzu co se tam nachází za koncovky a pak ručně vtyvořil složky a překopíroval data do ní viz.
Kód: [Vybrat]
mkdir MP3
mv -fv ./*/*.pm3 ../Obnova_dat_roztrideno/MP3/

Ale moc pohodlné to teda není :-\
PS: omluvte moji češtinu není to moje silná stránka, snažím se hlavně vystihnou podstatu problému. ;)

pacholik

  • Závislák
  • ****
  • Příspěvků: 2072
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #3 kdy: 03 Listopad 2012, 13:56:10 »
Kód: [Vybrat]
#!/bin/bash

koncovka() {
f=`basename "$1"`
[ "${f#*.}" == "$f" ] && echo "_bez_koncovky" || echo "${f#*.}" | tr '[:lower:]' '[:upper:]'
}

IFS='
'
new="Obnova_dat_roztrideno"
mkdir "$new"

find . -type f | while read i; do
k=`koncovka "$i"`
[ -d "$new/$k" ] || mkdir "$new/$k"
mv "$i" "$new/$k"
done

jadd

  • Stálý člen
  • ***
  • Příspěvků: 977
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #4 kdy: 03 Listopad 2012, 13:58:18 »
Není to na co se ptáš, ale jen bych poradil vyhledej nejdříve duplikáty, oni totiž můžou být dva stejné soubory, jak pomocí md5, tak zaručeného bytetobyte, i v rozdílných příponách.
A ikdyž se obrázek vykreslí, polovina jeho obsahu může být hledaný txt sobor. Takže grep (rekurzivní) taky nebude marný.
No, a batch renamer udělá taky dobrou službu, třeba z toho obrázku nejdřív .txt aby s tím nebyl problém, pak zase třeba .png

RRRadek Neužil

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • Závislák
  • ******
  • Příspěvků: 4656
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #5 kdy: 03 Listopad 2012, 14:50:29 »
Kód: [Vybrat]
#!/bin/bash

koncovka() {
f=`basename "$1"`
[ "${f#*.}" == "$f" ] && echo "_bez_koncovky" || echo "${f#*.}" | tr '[:lower:]' '[:upper:]'
}

IFS='
'
new="Obnova_dat_roztrideno"
mkdir "$new"

find . -type f | while read i; do
k=`koncovka "$i"`
[ -d "$new/$k" ] || mkdir "$new/$k"
mv "$i" "$new/$k"
done

Tedy chlape Velký potlesk pro tebe
Stačilo vytvořit spustitelný trideni.sh který se hodil do složky která se měla prohledávat. Chvilku to chroupalo a i když nakonec se snažil přesouvat věci umístěné v nově vytvořené složce "Obnova_dat_roztrideno" zase do stejné složky a nakonec zahrnul i samotný trideni.sh také do třídění. :) Každopádně výsledek je famózní. Opravdu moc děkuji, pokud se někdy na nějaké akci potkáme tak máš u mě Večeři/Oběd i s pitím ;)


@Tadeáši> Ten výpis souborů už se vyřešil tady ;)
http://forum.ubuntu.cz/index.php?topic=65393.msg465731#msg465731
Tadeáši nemohl by jsi hodit tento skrip od pacholíka do tipů a triků k photorec? Určitě se to bude hodit každému kdo kdy bude obnovovat data ;)
PS: omluvte moji češtinu není to moje silná stránka, snažím se hlavně vystihnou podstatu problému. ;)

Tadeáš Pařík

  • Předseda občanského sdružení Ubuntu ČR a člen placené komunitní podpory
  • Guru
  • *****
  • Příspěvků: 6547
    • Zobrazit profil
    • Ubuntu.cz
Re:Roztřídění souborů po obnově dat z Photorec...
« Odpověď #6 kdy: 03 Listopad 2012, 15:09:29 »
Ok, je to tam. Díky za zajímavý skript, tohle bych dohromady nedal (už jsem si ho uložil do dokumentace, může se hodit).
Do života je třeba mít připravený rozum, nebo provaz.

Ubuntu 14.04 64 bit / Windows 10 Pro - Intel DH87MC, Intel Core i7-4771, 8GB Ram, Kingston HyperX 3K SSD 120GB, Intel HD 4600 a ASUS GTX660-DC2OCPH-2GD5
Ubuntu 14.04 64bit - HP ProBook 4525s
Ubuntu 14.10 32bit - ThinkPad R52 (testování)

pariktadeas@jabbim.cz

pacholik

  • Závislák
  • ****
  • Příspěvků: 2072
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #7 kdy: 03 Listopad 2012, 17:16:22 »
to si snad ani nezasloužím :) , vždyť na tom vlastně nic není

Tadeáš Pařík

  • Předseda občanského sdružení Ubuntu ČR a člen placené komunitní podpory
  • Guru
  • *****
  • Příspěvků: 6547
    • Zobrazit profil
    • Ubuntu.cz
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #8 kdy: 03 Listopad 2012, 17:23:18 »
to si snad ani nezasloužím :) , vždyť na tom vlastně nic není

Skript je to fajnový a na wiki má své místo. Půjde, prosím, ještě nějak ošetřit, aby nebral/netřídil sebe sama?

Doplněný návod je zde → http://wiki.ubuntu.cz/syst%C3%A9m/datov%C3%A1_%C3%BAlo%C5%BEi%C5%A1t%C4%9B/testdisk?s

(Jsme si s Radkem říkali, že kdyby to pustil někdo v / nebo v /home/, tak by to byl docela masakr)  :)
« Poslední změna: 03 Listopad 2012, 17:25:04 od Tadeáš Pařík »
Do života je třeba mít připravený rozum, nebo provaz.

Ubuntu 14.04 64 bit / Windows 10 Pro - Intel DH87MC, Intel Core i7-4771, 8GB Ram, Kingston HyperX 3K SSD 120GB, Intel HD 4600 a ASUS GTX660-DC2OCPH-2GD5
Ubuntu 14.04 64bit - HP ProBook 4525s
Ubuntu 14.10 32bit - ThinkPad R52 (testování)

pariktadeas@jabbim.cz

Kedrigern

Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #9 kdy: 03 Listopad 2012, 17:33:11 »
Mám tyhle dva skripty, které na Photorec používám. Ale už dlouho si říkám, že je musím přepsat. Problém (který tam řeším) je třeba, že těch souborů může být víc než je povolená délka pole argumentů v bashy (a pak bash víceméně odmítne cokoliv dělat).

https://gist.github.com/2294052
https://gist.github.com/3680325

pacholik

  • Závislák
  • ****
  • Příspěvků: 2072
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #10 kdy: 03 Listopad 2012, 19:28:49 »
> Půjde, prosím, ještě nějak ošetřit, aby nebral/netřídil sebe sama?

Jak je libo, stačí poupravit find
Kód: [Vybrat]
find . -type f ! -wholename "$0" | while...

vanad

  • Člen
  • **
  • Příspěvků: 187
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #11 kdy: 22 Září 2013, 15:40:20 »
Jelikož se mi stala taky nemilá věc a potřeboval jsem získat raw data z HDD, zkoušel jsem a hledal různé programy. Po testování můžu vřele doporučit program R-sync, který mi toho našel asi 1000x víc, než photorec a navíc to už pěkně srovnal do složek. Z toho mála, co photorec našel, nebyla ani data, která jsem nejnutněji potřeboval, kdežto s R-linux vpohodě. Dal jsem odkaz na Wiki:

http://wiki.ubuntu.cz/záchrana_dat

Jo a aby se dalo mezi těmi miliony txt, odt...souborů najít, to co hledám, použil jsem nástroje na hledání klíčových slov uvnitř dokumentů, jinak bych to neprošel ani za 10 let!

Ty nástroje jsou tyto (každý je dobrý na jiný typ souboru, nutno vyzkoušet):

docfetcher –  (aplikace java)
docsearcher – (aplikace java)
searchmonkey –
regexxer –
recoll –
Ubuntu 18.04 LTS, Intel® Core™ i7-6700 CPU @ 3.40GHz × 8, Intel® HD Graphics 530 (Skylake GT2), www.mineralion.cz, www.vitatrend.cz

Myghael

  • Návštěvník
  • *
  • Příspěvků: 99
  • Si vis pacem, para bellum.
    • Zobrazit profil
    • FantasyWiki
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #12 kdy: 22 Září 2013, 22:08:02 »
Díky moc, pomohlo mi to.
Lenovo ThinkPad R61 8918DFG Intel Core2Duo T8100 2,1 GHz, 4 GB DDR2-667, Intel 965PM, nVidia NVS140M, Hitachi 160 GB SATA2, Ubuntu Server 14.04.2 LTS x86_64, Xfce + Gnome Classic + awesome
Na serverech Debian Stable x86_64 (doma) nebo AlexanderaServer UNIX (v práci).
Všechny desktopy mám diskless + PXE boot ze serveru - běhá to cca. tak rychle jako klasický HDD.

RRRadek Neužil

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • Závislák
  • ******
  • Příspěvků: 4656
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #13 kdy: 03 Říjen 2013, 11:53:45 »
R-linux opravdu funguje, právě otestováno na doku... flešce. :)
PS: omluvte moji češtinu není to moje silná stránka, snažím se hlavně vystihnou podstatu problému. ;)

bisik

  • Návštěvník
  • *
  • Příspěvků: 53
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #14 kdy: 08 Leden 2014, 16:41:11 »
Ahoj,
prosím Vás jdu dle návodu na testdisk, resp. na photorec a data mám na extra disku, na konci wiki jsem našel skript na trideni dle koncovek, pokud jdu za pomoci návodu ve wiki končím na poslední příkazu.
Citace
/media/***/My Passport/***/Plocha/recup_dir.265$ ./trideni.sh
bash: ./trideni.sh: Operace zamítnuta

Kde dělám chybu?
díky

Mariocz

  • Člen
  • **
  • Příspěvků: 148
    • Zobrazit profil
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #15 kdy: 08 Leden 2014, 16:55:12 »
chmod +x trideni.sh

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3126
    • Zobrazit profil
    • GdH-Notes
Re:Roztřídění souborů po obnově dat z Photorec... [vyřešeno]
« Odpověď #16 kdy: 08 Leden 2014, 18:04:41 »
chmod +x trideni.sh

Nebo
Kód: [Vybrat]
bash trideni.sh