W systemie plików, w którym nazwy plików znajdują się w UTF-8, mam plik o błędnej nazwie; jest wyświetlany jako :, D�sinstallerrzeczywista nazwa według zsh D$'\351'sinstaller:, Latin1 dla Désinstaller, sam francuski barbarzyństwo dla „odinstaluj”. Zsh nie [[ $file =~ '^.*$' ]]pasowałby do tego, ale pasowałby do niego globbingiem *- takiego zachowania się oczekuję.
Teraz nadal oczekuję, że znajdę go podczas działania find . -name '*'- w rzeczywistości nigdy nie spodziewałbym się, że nazwa pliku nie przejdzie tego testu. Jednak z LANG=en_US.utf8, plik nie pojawia się i muszę ustawić LANG=C(lub en_US, lub ''), aby działał.
Pytanie: Jakie jest wdrożenie i jak mogłem przewidzieć ten wynik?
Informacje: Arch Linux 3.14.37-1-lts, find (GNU findutils) 4.4.2
[[ $file =~ '^.*$' ]]tym, że nie używam recodenazwy pliku, ale teraz zajrzę w convmvrazie potrzeby. Dzięki.
convmvkonwersję nazw plików na utf-8?