Terminal pogryzł człowieka: classifier
Classifier to niepozorne narzędzie które pozwoli zapanować nam nad nieładem w katalogu z projektem, zdjęciami lub po prostu gromadzoną zawartością internetu. Porządki przeprowadzimy, a jakże, w terminalu, automatycznie i bez zgłębiania się w skomplikowane parametry i przełączniki. Jak to możliwe? A tak.
To, wydawałoby się, proste narzędzie tekstowe potrafi przeprowadzić gruntowne porządki we wskazanym folderze. Czyni to wrzucając odpowiednie pliki do odpowiednich katalogów. Może nie ma w tym nic z magii, ale może być pomocne podczas zmagań z tysiącami plików w jakimś zabałaganionym miejscu. Przy odrobinie zacięcia jesteśmy w stanie unormować sytuację w najbardziej zapuszczonym i zapomnianym kąciku naszego dysku. Na dzień dzisiejszy program sortuje pliki według następujących rozszerzeń:
Music:.mp3,.aac,.flac,.ogg,.wma,.m4a,.aiff,.wav,.amr Videos:.flv,.ogv,.avi,.mp4,.mpg,.mpeg,.3gp,.mkv,.ts,.webm,.vob,.wmv Pictures:.png,.jpeg,.gif,.jpg,.bmp,.svg,.webp,.psd,.tiff Archives:.rar,.zip,.7z,.gz,.bz2,.tar,.dmg,.tgz,.xz,.iso,.cpio Documents:.txt,.pdf,.doc,.docx,.odf,.xls,.xlsv,.xlsx, ppt,.pptx,.ppsx,.odp,.odt,.ods,.md,.json,.csv Books:.mobi,.epub,.chm DEBPackages:.deb Programs:.exe,.msi RPMPackages:.rpm
Ambitni mogą w łatwy sposób poprawić i powiększyć listę obsługiwanych domyślnie rozszerzeń (ponieważ to Python, wystarczy edycja źródeł, bez konieczności kompilacji). Powyższa lista jest reprezentowana przez tabelę w kodzie, którą wystarczy zaktualizować o interesujące nas formaty i określenie, do jakiego katalogu mają trafić. Na tym nie koniec, bowiem kilka opcji które obsługuje classifier pozwala na doprecyzowanie jakie pliki (rozszerzenia) w jakim katalogu chcielibyśmy umieścić, np:
classifier -st .py .pyc -sf "Python Files"
Wszystko robi się czytelniejsze gdy wiemy, że -st odpowiada za typ plików które chcemy przenieść a -sf określa katalog docelowy. Program rozpoznaje też kilka innych przełączników (np. -dt sortowanie plików według daty powstania, -o -d katalog źródłowy i docelowy), a autor napomina, że kolejne pojawią się wkrótce.
-h --help show help message and exit -dt --date Classify the files by their Creation Date -st --specific-types Move the specific file extensions into the Specific Folder -sf --specific-folder Folder to move files with Specific Type -d --directory The directory whose files you want to classify -o --output Main directory to put organized folders
Aby zainstalować classifier będziemy potrzebowali pakietu python-pip. W przypadku Ubuntu/Minta/Debiana wykonujemy zatem:
sudo apt-get install python-pip
sudo pip install classifier
Pod Arch Linuksem i Manjaro robimy to tak:
sudo pacman -S python-pip
sudo pip install classifier
Da się tym osiągnąć efekt, że podzieli fotki na roczne i miesięczne podkatalogi wg daty w nazwie pliku? Idea jest taka że odpalalbym to okresowo z crona w katalogu w którym synchronizuję na serwerze fotki ze smatfona. Fotki te byłyby automatycznie przenoszone do odpowiednich podkatalogow rok/mc do katalogu o odkrywczej nazwie “zdjęcia”. Teraz trzeba sprzątać ręcznie jak w tel zabraknie miejsca.
Chyba że ktoś zna inne rozwiązanie