tar + ελληνικά filenames -> windows + winrar

Thanasis thanasis at asyr.hopto.org
Sun Dec 30 08:57:38 EET 2007


on 12/30/2007 08:14 AM Giorgos Keramidas wrote the following:
> snipped...
>
>>> Μιας και το ανέφερες όμως, κι εμένα θα μου φαινόταν απίθανο αυτό, αλλά
>>> για συγκεκριμένο λόγο.  Το bzip2 δεν ασχολείται με τα «εσωτερικά
>>> αποθηκευμένα» filenames των περιεχομένων ενός tarball.
>> Σωστά.  Το ίδιο και το tar φαντάζομαι με το πώς θα βλέπω εγώ τα
>> αποθηκευμένα filenames στο filesystem, έτσι;
>
> Το tar, αντίθετα με το bzip2 (που κάνει απλά block-level compression),
> διαβάζει τα filenames από τον τρόπο με τον οποίο είναι αποθηκευμένα στο
> filesystem.  Χωρίς κάποια «έξτρα» πληροφορία, το tar δε μπορεί να ξέρει
> αν τα παρακάτω bytes είναι σε κωδικοποίηση ISO 8859-7:
>
>     b8 eb e5 ed e1 20 d0 e1  f0 e1 f1 df e6 ef f5 20
>     2d 20 c1 f3 f4 dd f1 e9  e1 2e 6f 67 67
>
> Μπορεί να προσπαθήσει να _μαντέψει_ κοιτάζοντας το $LANG ή το $LC_ALL ή
> το $LC_CTYPE στο environment, και αν τύχει αυτά να είναι ρυθμισμένα στη
> σωστή τιμή να καταλάβει ότι αντιστοιχούν στο string:
>
>     "Έλενα Παπαρίζου - Αστέρια.ogg"
>
> Αλλά αυτό μπορεί να είναι απλά ένα «extremely lucky guess», οπότε το tar
> δεν προσπαθεί καν να κάνει κάτι τέτοιο. 
και γιατί να ενδιαφέρει το tar να μαντέψει για το πώς εγώ θα ερμηνεύσω
τα παραπάνω bytes?
Άς το αφήσει αυτό στον εκάστοτε ενδιαφερόμενο, ο οποίος θα κάνει το
(un)tar το αρχείο. Έτσι δεν είναι;
>  Δυστυχώς, το tar file format
> δεν έχει πρόβλεψη για per-file character set,[1] 
Άς φροντίζει να μαντεύει ο εκάστοτε αποσυμπιέζων/un-tar-ων το
αρχείο.tar.bz2 :-)
> οπότε δεν είναι εύκολο
> να φτιαχτεί κάτι που να μην «μαντεύει» και να μη χρειάζεται user input.
>
> Πιθανόν να μπορεί να επεκταθεί το GNU tar ώστε να παίρνει παραμέτρους
> όπως --filename-encoding='XXX' αλλά αυτό δε θα λύσει το πρόβλημα για
> όσους δεν έχουν το GNU tar (π.χ. BSD, Solaris tar, ή Windows archivers).
>
>
>
Ήδη το gnu tar φοριέται παντού :-)




More information about the Linux-greek-users mailing list