przystajnik

Terminal pogryzł człowieka: detox

Niekiedy dziedziczymy albo odkrywamy zestaw plików o tak zaniedbanych nazwach, że aż gotuje się w nas poczucie przyzwoitości. Używanie w nazwach spacji to najmniejszy grzech – znaki specjalne, średniki, cudzysłowy, itp. Niechlujność niektórych użytkowników nie zna granic, a czasem nawet i programy nie pozostają bez winy. Jak to posprzątać i unormować? Najlepszym rozwiązaniem może okazać się nadzwyczaj skuteczny detox.

Detox to niewielki program, który potrafi hurtowo zamienić ciągi nieprzyzwoitych znaków w nazwach plików. Na dodatek jest bezpieczny w użyciu, gdyż w domyślnym jego wywołaniu i bez żadnych opcji nie jesteśmy w stanie nic sobie zepsuć (pliki nie znikną, nie zostaną nadpisane, itp.). Tym narzędziem automatycznie zamienimy znaki z którymi ciężko pracować (spacje, wspomniane cudzysłowy, znaki specjalne) na bardziej standardowe odpowiedniki (czyli np. zamiana spacji na _). Program oczyści również wizerunek plików z wszelkich natywnych naleciałości standardu UTF-8 i CP-1252 (a ludzie z CP-1252 na pokładzie to dopiero potrafią śmiecić).

Próbka możliwości?

#~/test$ ls
2".txt £§®.avi ósmy plik ósmego użytkownika:).txt "proba proba nr 1.txt "proba nr 2".txt test?#:::$.txt to.jest.wazne.xls

#~/test$ detox -v *
Scanning: 2".txt
2".txt -> 2_.txt
Scanning: £§®.avi
£§®.avi -> pound_reg_.avi
Scanning: ósmy plik ósmego użytkownika:).txt
ósmy plik ósmego użytkownika:).txt -> osmy_plik_osmego_uzytkownika-.txt
Scanning: "proba
"proba -> proba
Scanning: proba nr 1.txt
proba nr 1.txt -> proba_nr_1.txt
Scanning: "proba nr 2".txt
"proba nr 2".txt -> proba_nr_2_.txt
Scanning: test?#:::$.txt
test?#:::$.txt -> test_#_.txt
Scanning: to.jest.wazne.xls

#~/test$ ls
2_.txt osmy_plik_osmego_uzytkownika-.txt pound_reg_.avi proba proba_nr_1.txt proba_nr_2_.txt test_#_.txt to.jest.wazne.xls

To wszystko uzyskujemy bez żadnych parametrów (-v pokazuje która nazwa na co zostanie zamieniona). Jeżeli ktoś zechce doprecyzować działanie polecenia detox, to może posłużyć się krótką ściągawką:

usage: detox [-hLnrvV] [-f configfile] [-s sequence] [--dry-run] [--special]
          file [file ...]

        -f configfile   choose which config file to use
        -h --help       this message
        -L              list available sequences and exit
                        with -v ... dump sequence contents
        -n --dry-run    do a dry run (don't actually do anything)
        -r              be recursive (descend into subdirectories)
        --remove-trailing (deprecated)
                        remove trailing _ and - before a period
        -s sequence     choose which sequence to detox with
        --special       work on links and special files
        -v              be verbose
        -V              show the current version

Detox znajdziemy w podstawowych repozytoriach większości dystrybucji – nie powinny wystąpić zatem żadne trudności w jego zainstalowaniu.
 

Post navigation

5 comments for “Terminal pogryzł człowieka: detox

  1. Pierwszy gość
    26 sierpnia, 2015 at 6:30

    Cudzysłów – cudzysłowy 😉

  2. 26 sierpnia, 2015 at 6:45

    No tak, to przecież takie oczywiste… 🙂

  3. eMcE
    27 sierpnia, 2015 at 11:45

    Super! Czegoś takiego szukałem właśnie. Dzięki wielkie.

  4. ccaatt
    29 sierpnia, 2015 at 20:13

    Przydatne narzędzie, dobrze widzieć

  5. 30 sierpnia, 2015 at 3:56

    Ojtam, wolę jednak używać taba. 😉

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Translate »