cp не копирует специальные символы - PullRequest
0 голосов
/ 05 апреля 2019

Я запускаю программу Java на машинах Debian.Среди прочего, это программное обеспечение копирует некоторые каталоги: cp -r --remove-destination /etc/some/dir /opt/some/dir.Однако, когда другие люди запускают эту программу, некоторые специальные символы (например, é) не копируются должным образом (то есть?).Я думаю, что это исходит от местных жителей.Но я не хочу его изменять.

Кто-нибудь знает, как скопировать с помощью cp или другой командой некоторые файлы со специальными символами, не затрагивая местных пользователей?Или я должен решить эту проблему с помощью API копирования файлов Java?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 08 апреля 2019

Я наконец-то нашел решение, указав кодировку для использования в Java:

java -Dfile.encoding=UTF-8 file.jar

Если вы не укажете его, JVM получит кодировку из переменных среды пользователя, выполняющего .jar.

0 голосов
/ 05 апреля 2019

Какая файловая система смонтирована на вашем /etc/some/dir?

Попробуйте смонтировать с опцией iocharset=utf8

...