macOSでは、ファイル名の文字コードをcp932などにすることはできません。
macOSで標準のHFS+またはHFSXファイルシステムでは、ファイル名の文字コードにUTF-8しか使えません (より正確に言うと、修正NFDで正規化したUTF-8しか使えない。詳細はTN1150: HFS Plus Volume Formatの説明を参照)。ほかの文字コードのファイル名を作ること (名前を変えることも含む) はできません。作ろうとしたファイル名に正しくないバイトがあると、「%xx
」(xx
は2桁の16進数) に置換されます。
ご質問では、ファイル名をまずcp932によるものに変えようとしたため、正しくないバイトが置換されました。この結果、cp932によるファイル名ではなく、元のファイル名とも異なるが、システム的には正しいファイル名として受け入れられるものになりました。
なお、置換されてしまったファイル名ですが、convmvの--unescape
オプションを使っても元に戻すことはできません。--unescapeと-f、-tを一緒に指定することはできないためです。convmvを改造したり、mvなどでひとつひとつ戻すなどする必要があります。
(上記、間違った記述を修正しました)
(追記)
convmvはもともとUnix系のOSで使うことを想定して作られたと思われます。Unix系ではファイルシステムの文字コードについて統一した決まりはなく、様々な文字コード (日本語では、BSD、Solaris、Linuxなどは主にEUC-JP、AIXはShift_JIS、など) が使われてきました。近年ではUTF-8を使うものが多くなってきています。またWindowsではANSIコードページ (日本語ではcp932) が使われます。
Unix系のファイルシステムでは従来、どんな文字コードのファイル名も特に制限なく作れていたため、異なる文字コードのファイル名がひとつのファイルシステムに混在するということが起こり得ました。convmvはこの「どんな文字コードのファイル名も作れる」ということを逆手に取って、ファイル名の文字コードをユーザが決めたものに直そうとするツールです。
macOSもUnix系のOSではあるのですが、ファイルシステムで文字コードを限定しているため、他の文字コードのファイル名はつくれません。ですので、macOS上でconvmvを (特に改造せずに) 使える場面はあまりないと言えます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/07 16:26
2017/01/07 16:32
2017/01/08 00:48
2017/01/08 03:35
2017/01/08 05:00
2017/01/10 08:26
2017/01/10 08:44
2017/01/15 02:36
2017/01/15 04:07