имя файла меняется, когда копируется из одного пути в другой кодировка юникода изменяется - PullRequest
0 голосов
/ 27 июня 2018
Каталог

mypath содержит файлы, скопированные из каталога FastCopy, я скопировал файл в mypathd каталог и выполнил следующее и заметил, что имя файла отличается

перечисление определенных файлов из mypath

>>> l = [f for f in listdir(mypath) if f.startswith('02748571-00000003-00004861')]
>>> l
['02748571-00000003-00004861-n@#SEDARDoNotDelete#2018#FDP#renewal#final#consentementRCGT-fran\xe7ais-PDF.pdf', '02748571-00000003-00004861-n@#SEDARDoNotDelete#2018#FDP#renewal#final#consentementRCGT-fran\xe7ais-PDF-SCRIBE.txt.bad']

перечисление определенного файла из mypathd

>>> l = [f for f in listdir(mypathd) if f.startswith('02748571-00000003-00004861')]
>>> l
['02748571-00000003-00004861-n@#SEDARDoNotDelete#2018#FDP#renewal#final#consentementRCGT-fran\xe6\xa0\xa9s-PDF.pdf', '02748571-00000003-00004861-n@#SEDARDoNotDelete#2018#FDP#renewal#final#consentementRCGT-fran\xe6\xa0\xa9s-PDF-SCRIBE.txt.bad']
>>>

Я чувствую, что сгущенные имена файлов имеют локальную латинскую кодировку и при копировании в другое место кодируется юникодом, но что делает это возможным. Destail информация будет высоко ценится

>>> sys.getfilesystemencoding()
'ANSI_X3.4-1968'

 echo $LANG -> no output

используемый модуль Perl для перетаскивания файла из каталога fastcopy Я использую Linux дистрибутив. работает в красных коробках

Случается, что имя файла имеет латинскую кодировку только в папке home / docs / xyz, которая является сетевой файловой системой

mount | grep docs
/docs/xyz on /home/docs/xyz type nfs (rw,proto=tcp,sloppy,addr=xxx.xxx.xx.xx)

Так, как я могу узнать локаль nfs, как я могу продолжить проблему ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...