Az Archívumkezelő 7z karakterkódolási hibája a ZIP fájloknál

kimarite képe

Az Archívumkezelő GNOME alkalmazás (file-roller), és a ZIP fájlok kibontására - meglátásom szerint, tesztelésem alapján - a 7z alkalmazást használja, amely a p7zip-full csomag része. Nincs is az alkalmazással gond, csak az, ha egy Windows vagy macOS rendszeren tömörített ZIP fájl tartalmát bontom ki, akkor ebbe bizony beletörik a bicskája.

A probléma megkerülhető:
-- a convmv alkalmazás használatával, amellyel a mentett fájl nevét UTF-8 karakterkódolásról, iso-8859-15 karakterkódolásra tudjuk átalakítani,
-- vagy másik, például a Xarchiver archívumkezelő alkalmazás használatával, amely nem a 7z-et használja a fájlok kicsomagolására.

A ZIP fájlok neve a Linux terjesztéseken helyesen jelenik meg, a tartalom megjelenítéséről van most szó.

convmv

Telepítsd valamelyik csomagkezelő használatával, vagy a terminálban:

sudo apt-get install convmv

Az alkalmazás a fájl nevét alakítja át, a fájl tartalmát nem változtatja meg.

Használat

Abban a könyvtárban kell állnod, ahol az átalakítandó fájl van.
Beléphetsz oda a Fájlkezelőből, a környezeti menü használatával, a Megnyitás terminálban elem kiválasztásával, vagy terminálban a cél könyvtárba lépéssel,

-- ha a fájl a Letöltések könyvtárban tartózkodik, akkor így:

cd Letöltések/

Az átalakítandó fájl teljes nevének kiegészítésére a TAB-ot lehet használni, a karakterkódolás miatt viszont most ez nem használható, így a fájlok parancssorban használ neve TestPrezenta*.odp:

-- teszt (nem történik átalakítás):

convmv -f UTF-8 -t iso-8859-15 TestPrezenta*.odp
Starting a dry run without changes...
mv "./TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp"    "./TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp"
No changes to your files done. Would have converted 1 files in 0 seconds.
Use --notest to finally rename the files.

-- az átalakítás a notest paraméter használatával történik:

convmv --notest -f UTF-8 -t iso-8859-15 TestPrezenta*.odp
mv "./TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp"    "./TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp"
Ready! I converted 1 files in 0 seconds.

Az átalakítás folyamatában látható, a folyamatban részt vesz az mv (move/áthelyezés) alkalmazás, azaz, az eredeti fájl törlődik.

Az eredmény (listázom):

ls | grep Test
TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp

Ha több olyan fájlod is van, amely neve rossz karakterkódolással jelenik meg, akkor csoportos átalakítást is végezhetsz: az átalakítandó fájlokat egyetlen könyvtárba másold át, majd az r paraméterrel rekurzívan, a könyvtár tartalmára alkalmazd a parancssort.

Példa

Ha az új, átalakítandó fájlokat tartalmazó könyvtár neve convmv_átalakítások, és a Letöltések könyvtárban található:

-- teszt,

convmv -f UTF-8 -t iso-8859-15 -r Letöltések/convmv_átalakítások/*

-- és átalakítás:

convmv --notest -f UTF-8 -t iso-8859-15 -r Letöltések/convmv_átalakítások/*

Arra figyelj, a parancssorban mindenképpen jó elérési utat adj meg!

Kézikönyv

Terminálban:

man convmv

Online: https://linux.die.net/man/1/convmv

Xarchiver

Telepítsd valamelyik csomagkezelő használatával, vagy a terminálban:

sudo apt-get install xarchiver

Figyelj arra, hogy a kibontás helyét változtasd meg, mert alapértelmezetten a tmp könyvtár az!

Saját magán kívül nem telepít más csomagot.

Enjoy :-)

-----

Karakter kódolás

Miféle lehet? Az encguess alkalmazással végzett teszttel kiderül:

encguess TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp
TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp    UTF-32BE

... látható, a kibontott fájl UTF kódolású.
https://hu.wikipedia.org/wiki/UTF-32/UCS-4
https://hu.wikipedia.org/wiki/UTF-8

... valamelyest logikus és ésszerű.

Az átalakított fájl karakterkódolása:

encguess TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp
TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp    UTF-32BE

A file parancs most nem segített a kutakodásban:

file -bi TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp
application/vnd.oasis.opendocument.presentation; charset=binary
file TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp
TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp: OpenDocument Presentation

7Z

Úgy tűnik, tényleg a 7z alkalmazással van probléma. Teszteltem az l paraméterrel (listázás):

7z l TestPrezenta*.zip

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=hu_HU.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz (306A9),ASM,AES-NI)

Scanning the drive for archives:
1 file, 18204 bytes (18 KiB)

Listing archive: TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp.zip

--
Path = TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp.zip
Type = zip
Physical Size = 18204

   Date      Time    Attr         Size   Compressed  Name
------------------- ----- ------------ ------------  ------------------------
2020-10-10 15:39:16 .....        19970        17401  TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp
2020-10-10 15:39:58 D....            0            0  __MACOSX
2020-10-10 15:39:16 .....          210          109  __MACOSX/._TestPrezentaÌcioÌKoraÌbbanIsmertProbleÌmaÌkKeÌrdeÌseÌreUÌdv.odp
------------------- ----- ------------ ------------  ------------------------
2020-10-10 15:39:58              20180        17510  2 files, 1 folders

... nem jól jeleniti meg a ZIP fájl tartalmának neveit.

unzip

Az alkalmazás tökéletesen működik:

unzip TestPrezent*.zip
Archive:  TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp.zip
  inflating: TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp  
   creating: __MACOSX/
  inflating: __MACOSX/._TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp

Azt gondolom, a Xarchiver alkalmazás is ezt használja.
Az is igaz, a kimenet nem egy könyvtár, azt meg kell adni külön.

Locale

A nyelvi támogatás megváltoztatása, azaz bővítése lenne még egy megoldás (a file-roller indítása az iso-8859-15 környezeti változóval),

env LANG=hu_HU.iso-8859-15 file-roller TestPrezenta*.zip
(file-roller:7043): Gtk-WARNING **: 17:57:34.490: Locale not supported by C library.

de ehhez érthetően nekem sincsen kedvem. Jelenleg az UTF-8-ra támogatott a rendszer. Amúgy ez az alapértelmezés is.

Hozzászólások

Csak egy kérdés

Ha a double commenderben próbálod meg kibontani, akkor is előjön a jelenség? Nekem is volt ilyen gondom és a DC segített. 

Értékelés: 

0
Még nincs értékelve
kimarite képe

Csak egy kérdés

#1 A DC-t nem használom, így nem is próbálkoztam vele. Nincs is szándékomban archívumkezelő alkalmazás helyett más, és más fájlkezelőket telepíteni, csak azért, mert ezt az egy dolgot tudja. A Xarchiver is tudja, és bármely fájlkezelőbe beépül (tudtommal). Mint írtam, a hibát a 7z (p7zip) okozza.
A DC mit használ beépülőnek?

Értékelés: 

0
Még nincs értékelve

Csak egy kérdés

#1.1 P7Z Usr - 7-Zip Wcx bővítményt.  Én régebben 2010 környékén futottam bele ebbe (vagy hasonló problémába) és azóta használom a DC-t. Csak arra voltam kiváncsi, hogy a probléma ugyanaz, vagy másik, hasonló hiba. 

Értékelés: 

0
Még nincs értékelve
kimarite képe

Csak egy kérdés Csak egy kérdés

#1.1.1 P7Z Usr - 7-Zip Wcx

Ezt nem ismerem.
A kérdező törölte a letölthető fájlt:
(TestPrezentációKorábbanIsmertProblémákKérdéséreÜdv.odp.zip)

Nincs előnézet. A fájl a tulajdonos kukájában van.

Nem válaszolt arra a kérdésemre, hogy felhasználhatom-e.
Nekem sincs meg, töröltem.
(végül sikerült letölteni így is most ;))

-----

Nekem ez a p7zip verzió van (listázom):

apt-cache policy p7zip-*
p7zip-full:
  Telepítve: 16.02+dfsg-6
  Jelölt:    16.02+dfsg-6
  Verziótáblázat:
 *** 16.02+dfsg-6 500
        500 http://httpredir.debian.org/debian buster/main amd64 Packages
        100 /var/lib/dpkg/status
p7zip-rar:
  Telepítve: 16.02-3
  Jelölt:    16.02-3
  Verziótáblázat:
 *** 16.02-3 500
        500 http://httpredir.debian.org/debian buster/non-free amd64 Packages
        100 /var/lib/dpkg/status

Amiket te írsz, valami más?

Értékelés: 

0
Még nincs értékelve

Csak egy kérdés Csak egy kérdés Csak egy kérdés Csak egy kérdés

#1.1.1.1

#1.1.1.1

Igen ez picit más, a DC-hez készült beépülő: https://github.com/ike9000e/p7z-usr

Ennek függősége a p7zip, így nagy valószínüséggel azt használja, csak a beállításokat határozza meg. Magába a beépülőbe nem néztem bele :)

Értékelés: 

0
Még nincs értékelve
kimarite képe

Csak egy kérdés

#1.1.1 Én régebben 2010 környékén futottam bele ebbe (vagy hasonló problémába) és

Manapság is fennáll? 11 év nem kevés. :)

Értékelés: 

0
Még nincs értékelve
kimarite képe

Képek megosztása: Imgur vagy imgBB

#2 Szia, kérlek, a képernyőképet az Imgur vagy az imgBB portálok egyikével oszd meg újra. Mi ezeket használjuk.

Értékelés: 

0
Még nincs értékelve
kimarite képe

A Xarchiver hibásan jeleníti meg a fájl nevet

#2.1.1 Tesztelnél egy tömörítvényt a két alkalmazással?

A parancssorok (az * helyébe a fájlnév kell):

7z l *.zip
unzip *.zip

Kimenetek?

A Xarchivernél be van kapcsolva a kiemelt elem?

Beállítások > Archiválás > Prefer unzip for zip files (requires restart)

Ha nincs, próbáltad így is a kibontást?

Értékelés: 

0
Még nincs értékelve
kimarite képe

Tesztek eredményei

#3 Tanácsok:

  • Annyit tennék hozzá, ha kimenetet kérünk, akkor azt ne képen mutasd, hanem szövegesen. Annyira nem lehet neked sem újdonság. Leírás: A honlap működése 7. rész: Ubuntu Pastebin | szöveg megosztása
  • Nyomd meg a Válasz elemet, hogy látszódjon, mire válaszoltál! Nem így történt. Viszont, jól látható, hogy én mire válaszoltam.
  • Illik megnézni a megosztott képet a megosztás előtt: te látod-e azt rajta, amit velünk közölni szeretnél :)? A legnagyobb nagyításban is elég nehezen értelmezhetőek a fotóid. Nagyjából sikerült... . Kb. ez a gond a fotókkal. Persze, van, mikor fotót kérünk.

Teszt eredményekre

Sehol nem jó a név, látom.

Írod, az unzip viselkedésre beállítás után a Xarchiver alkalmazást újraindítottad. Akkor a ZIP fájl tartalma, tömörítési módszere lehet egyéni.

Ha lehetséges, ossz meg egy ilyen ZIP fájl valahogyan (Dropbox vagy más felhő szolgáltatás URL), akkor tudom tesztelni, nálam hogyan viselkedik.

Értékelés: 

0
Még nincs értékelve

Tesztek eredményei

#3.1

  • Bevallom nem olvastam el a 7. részt :/ - pótlom.
  • Ok
  • Megnéztem. Láttam - bár egy nagy monitoron nézem.

 

Privátban elküldtem a letöltési linket.

 

Értékelés: 

0
Még nincs értékelve
kimarite képe

7zip for Windows GUI to always use UTF-8 (-mcu=on)

#3.1.1 Megkaptam. A Windows alatt kéne beállítani az UTF-8 egyezést a becsomagolás előtt:

I tested your solution from post #5 and it worked. Now i'd really like an option in the 7zip for Windows GUI to always use UTF-8 (-mcu=on).

https://sourceforge.net/p/sevenzip/discussion/45797/thread/19012293/#53d0

Most ennyi fért a tesztekbe.

Tulajdonképpen a fájlnevekkel van gond, a fájlok tartalmával nincs.

Értékelés: 

0
Még nincs értékelve

7zip for Windows GUI to always use UTF-8 (-mcu=on)

#3.1.1.1

Tudom, hogy a tartalmuk jó, csak olyan hülyén nézett ki. Meg jelenjen már meg rendesen. Szóval én ezt a pakkot kaptam.

Az egészet kicsomagoltam és újra visszacsomagoltam rar-ral. Hagytam a rar-ban a defaultot karakter kódolást (nem jelöltem be az UTF-8-t. gondoltam kipróbálom mi lesz úgy) és utána megnéztem Linux alatt is. Minden rendben volt - jók a megjelenített karakterek. Nem tudom mivel csomagolták eredetileg be. :/

Köszönöm a segítséged. :)

 

 

Értékelés: 

0
Még nincs értékelve
kimarite képe

7zip for Windows GUI to always use UTF-8 (-mcu=on)

#3.1.1.1.1 Érdekes megoldás :). Igazság szerint egy futó pillanatra átfutott rajtam is ez az ötlet. Gratulálok.

A becsomagolás mikéntjére érdemes lenne esetleg rákérdezni. Dokumentációban, okok után kutatàsban segít.

Szívesen.

Értékelés: 

0
Még nincs értékelve

7zip for Windows GUI to always use UTF-8 (-mcu=on)

#3.1.1.1.1.1

Megpróbálom kideríteni, de közvetlen nem vagyok kapcsolatba az emberrel. Csak máson keresztül.

Ha sikerül jelzem itt.

Köszönöm a segítséged - nagyon zavart, hogy kriksz-kraksz jelenik meg.

Értékelés: 

0
Még nincs értékelve
kimarite képe

7zip for Windows GUI to always use UTF-8 (-mcu=on)

#3.1.1.1.1.1.1 Nem kötelező, és nem is sürgős, csak szakmai kíváncsiság.
Még egyszer: szívesen, de te oldottad meg, és nagyon jó, hogy próbálgattál más megoldásokat is, logikusakat.

 

Értékelés: 

0
Még nincs értékelve