Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Po wypakowaniu zipa w folderze pojawiły się pliki, które mają krzaki w nazwie, czyli ich kodowanie jest nie takie jak powinno, a powinno być chyba utf-8. W każdym razie znalazłem programik co się nazywa convmv i on niby ma zmienić kodowanie w nazwach. I chciałem mu ustawić utf-8 jako wynik ale nie mam pojęcia jakie jest ustawione kodowanie w tych krzaczastych nazwach. Próbowałem ISO-8859-2 oraz WINDOWS-1250, czyli standardowych kodowań dla europy centralnej ale to tylko zmieniało jedne krzaki na inne.
Istnieje jakiś sposób by ustalić jakie kodowanie jest ustawione w nazwach plików?
Offline
Może [deb]enca[/deb]?
Offline
Tylko to nie jest chyba to o co mi chodzi. Bo według tego textu http://dug.net.pl/tekst/124/ :
W ten sposób można zmieniać kodowanie plików tekstowych, html, skryptów php i podobnych. Praktycznie wszystkich plików - które można otworzyć w edytorze tekstowym (np gedit, kate) lub programistycznym ( np geany).[/quote]
A mi chodzi o zmianę nazwy pliku a nie jego treści.
Sprawdziłem ence na 2 plikach, txt i mp3 i tak wygląda:Kod:
$ enca -L polish -m \!opis\ ksiѥki.txt windows-1250 $ enca -L polish -m 01.�ladami\ mit�w\ staro�ytnej\ Grecji\ i\ Rzymu.mp3 unknownZnalazłem niby taką linijkę:
Kod:
find . -type f -print -exec iconv -f iso8859-2 -t utf-8 -o {}.converted {} \; -exec mv {}.converted {} \;Wygląda na to, że wystarczy tam wstawić kodowanie WINDOWS-1250 i po problemie, ale krzaki dalej są. :]
Ostatnio edytowany przez morfik (2013-09-13 22:25:49)
Offline
A jak spróbujesz w momencie rozpakowywania?
As ZIP files doesn't include information on the encoding of the filenames, most of ZIP archivers use native(system) encoding for it. This is why the ZIP files archived on Windows can't be unarchived on Linux. For example, Korean version of Windows uses 'cp949(extended euc-kr)' encoding to zip and unzip the files. Japanese version of Windows uses 'shift-jis', and so on.
Recently, encoding selection options are added to unzip. Two of them can be controlled by environment variables.
export UNZIP='-O cp949'
export ZIPINFO='-O cp949'
These settings let unzip use cp949 instead of utf-8, the native linux encoding, and improve compatibility with Windows.
So I propose that Ubuntu should include the settings above according its locale. If the system uses ko_KR.UTF-8, cp949 should be selected. For ja_JP.UTF-8, shift-jis should be used. zh_CN and other locales also can be configured.[/quote]
https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/203609
Coś w tym stylu:
http://utauarianna.altervista.org/tutorials/unzipping-japanese-encoded-archive/
Offline
To chyba coś nie działa. Ustawiłem te zmienne na cp1250, utf8, utf-8 i przy każdym z nich unzip nie chce wypakować pliku. Zrobiłem testowego zipa i bez tych zmiennych się wypakowywuje normlanie, ale po dodaniu ich, przy próbie wypakowania wyrzuca pomoc. :]
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00095 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='13.59.112.169' WHERE u.id=1 |
0.00085 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '13.59.112.169', 1732610654) |
0.00039 | SELECT * FROM punbb_online WHERE logged<1732610354 |
0.00192 | DELETE FROM punbb_online WHERE ident='85.208.96.201' |
0.00019 | SELECT topic_id FROM punbb_posts WHERE id=240890 |
0.00020 | SELECT id FROM punbb_posts WHERE topic_id=24250 ORDER BY posted |
0.00045 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=24250 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00061 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=24250 ORDER BY p.id LIMIT 0,25 |
0.00069 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=24250 |
Total query time: 0.00644 s |