Eu tenho um disco com codificação de caracteres chinês simplificado copiado do Windows.
E agora instalei o centos7 com codificação de caracteres tradicional chinês.
1 Como eu poderia montar este disco?
Eu uso o comando ntfs-3g /dev/sdb /mnt/windows -o locale=zh_CN.GBK mas ainda tenho um nome de arquivo confuso.
2 Como eu poderia copiar esses arquivos?
Eu uso o comando cp -r e ele imprime
cp -r /mnt/7 /home/jl/文件/7 cp: 無法存取 '/mnt/7/20140206/\275̰\270/\261\270\277\316': 不適用或不完整的多位元組字元或寬字元 cp: 無法存取 '/mnt/7/20140206/\275̰\270/֪ʶ\265\343': 不適用或不完整的多位元組字元或寬字元cp: 無法存取 '/mnt/7/20140206/\277Ƽ\274\273': 不適用或不完整的多位元組字元或寬字元
Você pode não ler isso, significa que o cp não pôde ser executado por causa de um caractere inadequado (?)
Esse problema é causado obviamente por um separador de caminho diferente no sistema operacional.
E eu tentei convmv -f gbk -t big5 -r --notest /home/jl/文件/7 mas também falhei.
Devo usar o scp para copiar este diretório?
Responder1
Em primeiro lugar, você está lidando com diferentes protocolos de codificação: o Windows codifica emUTF-16, enquanto o padrão para Linux e OSX éUTF-8.
Então, embora você tenha definido a codificação paraUTF-8ao montar sua pilha de dados no Linux, os dados foram codificados comUTF-16pelo Windows.
Suspeito que os nomes dos arquivos contenham caracteres multibyte que não estão sendo lidos corretamente em UTF-8. Como regra geral, ao trabalhar com funcionários bilíngues, eu digo a eles para usarem caracteres não acentuados em UTF-8 (que são os primeiros 128 caracteres) para nomes de arquivos, para evitar exatamente esse tipo de problema.
Diferenças nas codificações de caracteres em nomes de arquivos podem causar problemas ao restaurar um backup TAR em um sistema com codificações diferentes.
De qualquer forma, você pode converter codificações com ICU:http://site.icu-project.org/.
HTH você fora-