CONVMV and cyrillic filenames
Clash Royale CLAN TAG#URR8PPP
up vote
3
down vote
favorite
I am trying to convert filenames in russian zipfile to UTF-8 using convmv.
Original filename: "æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg" (æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg with slashes)
This analyzer (https://2cyr.com/decode/?lang=en) detected source encoding CP866 + displayed as CP437, and successfully decodes to desired á òðýøûÃÂýÃÂü ðÃÂþüðÃÂþü.jpg.
My question is, how can I set up convmv to decode it properly?
For convmv -f cp866 -t utf-8 filename
, I get "already UTF-8", in --nosmart mode I get jibberish.
linux character-encoding
add a comment |Â
up vote
3
down vote
favorite
I am trying to convert filenames in russian zipfile to UTF-8 using convmv.
Original filename: "æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg" (æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg with slashes)
This analyzer (https://2cyr.com/decode/?lang=en) detected source encoding CP866 + displayed as CP437, and successfully decodes to desired á òðýøûÃÂýÃÂü ðÃÂþüðÃÂþü.jpg.
My question is, how can I set up convmv to decode it properly?
For convmv -f cp866 -t utf-8 filename
, I get "already UTF-8", in --nosmart mode I get jibberish.
linux character-encoding
add a comment |Â
up vote
3
down vote
favorite
up vote
3
down vote
favorite
I am trying to convert filenames in russian zipfile to UTF-8 using convmv.
Original filename: "æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg" (æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg with slashes)
This analyzer (https://2cyr.com/decode/?lang=en) detected source encoding CP866 + displayed as CP437, and successfully decodes to desired á òðýøûÃÂýÃÂü ðÃÂþüðÃÂþü.jpg.
My question is, how can I set up convmv to decode it properly?
For convmv -f cp866 -t utf-8 filename
, I get "already UTF-8", in --nosmart mode I get jibberish.
linux character-encoding
I am trying to convert filenames in russian zipfile to UTF-8 using convmv.
Original filename: "æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg" (æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg with slashes)
This analyzer (https://2cyr.com/decode/?lang=en) detected source encoding CP866 + displayed as CP437, and successfully decodes to desired á òðýøûÃÂýÃÂü ðÃÂþüðÃÂþü.jpg.
My question is, how can I set up convmv to decode it properly?
For convmv -f cp866 -t utf-8 filename
, I get "already UTF-8", in --nosmart mode I get jibberish.
linux character-encoding
linux character-encoding
edited Sep 9 at 12:10
Jeff Schaller
33.1k849111
33.1k849111
asked Sep 8 at 17:20
Adam Plà ¡ek
182
182
add a comment |Â
add a comment |Â
1 Answer
1
active
oldest
votes
up vote
2
down vote
accepted
A single pass of convmv
can only fix one level of wrong-ness at a time. Your particular file is more complicated. It was originally cp866, and it was at some point turned into UTF-8, but whatever did that conversion thought it was originally cp437 and so converted it wrong. To fix this, you need to run convmv
twice:
convmv -f utf-8 -t cp437 --notest 'æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg'
convmv -f cp866 -t utf-8 --notest $'x91 xa2xa0xadxa8xabxecxadxebxac xa0xe0xaexacxa0xe2xaexac.jpg'
Note that I had to escape the name in the second command. If you're running this in bulk and/or don't want to deal with doing that, you can use something like *.jpg
, or put all of the affected files in their own directory and use the -r
option to convmv
.
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
A single pass of convmv
can only fix one level of wrong-ness at a time. Your particular file is more complicated. It was originally cp866, and it was at some point turned into UTF-8, but whatever did that conversion thought it was originally cp437 and so converted it wrong. To fix this, you need to run convmv
twice:
convmv -f utf-8 -t cp437 --notest 'æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg'
convmv -f cp866 -t utf-8 --notest $'x91 xa2xa0xadxa8xabxecxadxebxac xa0xe0xaexacxa0xe2xaexac.jpg'
Note that I had to escape the name in the second command. If you're running this in bulk and/or don't want to deal with doing that, you can use something like *.jpg
, or put all of the affected files in their own directory and use the -r
option to convmv
.
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
add a comment |Â
up vote
2
down vote
accepted
A single pass of convmv
can only fix one level of wrong-ness at a time. Your particular file is more complicated. It was originally cp866, and it was at some point turned into UTF-8, but whatever did that conversion thought it was originally cp437 and so converted it wrong. To fix this, you need to run convmv
twice:
convmv -f utf-8 -t cp437 --notest 'æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg'
convmv -f cp866 -t utf-8 --notest $'x91 xa2xa0xadxa8xabxecxadxebxac xa0xe0xaexacxa0xe2xaexac.jpg'
Note that I had to escape the name in the second command. If you're running this in bulk and/or don't want to deal with doing that, you can use something like *.jpg
, or put all of the affected files in their own directory and use the -r
option to convmv
.
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
add a comment |Â
up vote
2
down vote
accepted
up vote
2
down vote
accepted
A single pass of convmv
can only fix one level of wrong-ness at a time. Your particular file is more complicated. It was originally cp866, and it was at some point turned into UTF-8, but whatever did that conversion thought it was originally cp437 and so converted it wrong. To fix this, you need to run convmv
twice:
convmv -f utf-8 -t cp437 --notest 'æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg'
convmv -f cp866 -t utf-8 --notest $'x91 xa2xa0xadxa8xabxecxadxebxac xa0xe0xaexacxa0xe2xaexac.jpg'
Note that I had to escape the name in the second command. If you're running this in bulk and/or don't want to deal with doing that, you can use something like *.jpg
, or put all of the affected files in their own directory and use the -r
option to convmv
.
A single pass of convmv
can only fix one level of wrong-ness at a time. Your particular file is more complicated. It was originally cp866, and it was at some point turned into UTF-8, but whatever did that conversion thought it was originally cp437 and so converted it wrong. To fix this, you need to run convmv
twice:
convmv -f utf-8 -t cp437 --notest 'æ óááÿýâÂÂáôü áñëüáÃÂëü.jpg'
convmv -f cp866 -t utf-8 --notest $'x91 xa2xa0xadxa8xabxecxadxebxac xa0xe0xaexacxa0xe2xaexac.jpg'
Note that I had to escape the name in the second command. If you're running this in bulk and/or don't want to deal with doing that, you can use something like *.jpg
, or put all of the affected files in their own directory and use the -r
option to convmv
.
edited Sep 8 at 19:11
answered Sep 8 at 19:05
Joseph Sible
941213
941213
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
add a comment |Â
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
Now its clear, thank you.
â Adam Plà ¡ek
Sep 8 at 19:58
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f467744%2fconvmv-and-cyrillic-filenames%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password