回答編集履歴

2

訂正・追記

2017/01/08 04:57

投稿

ikedas
ikedas

スコア4337

test CHANGED
@@ -6,9 +6,17 @@
6
6
 
7
7
  ---
8
8
 
9
- なお、置換されてしまったファイル名ですが、[convmv](https://www.j3e.de/linux/convmv/man/)の`--unescape`オプションで (このオプションの本来の用途ではないですが) 元に戻すことができると思います (**間違い。戻すことはできません。--unescapeと-f、-tを一緒に指定することはできません**)
9
+ なお、置換されてしまったファイル名ですが、[convmv](https://www.j3e.de/linux/convmv/man/)の`--unescape`オプションを使っても元に戻すことはできません。--unescapeと-f、-tを一緒に指定することはできないためです。convmvを改造したり、mvなどでひとつひとつ戻すなどする必要があり
10
10
 
11
- ```
12
- $ convmv --unescape -f cp932 -t utf-8 %82%A0.txt
11
+ (上記、間違った記述を修正しました)
13
- ```
14
12
 
13
+ ---
14
+
15
+ (追記)
16
+
17
+ convmvはもともとUnix系のOSで使うことを想定して作られたと思われます。Unix系ではファイルシステムの文字コードについて統一した決まりはなく、様々な文字コード (日本語では、BSD、Solaris、Linuxなどは主にEUC-JP、AIXはShift\_JIS、など) が使われてきました。近年ではUTF-8を使うものが多くなってきています。またWindowsではANSIコードページ (日本語ではcp932) が使われます。
18
+
19
+ Unix系のファイルシステムでは従来、どんな文字コードのファイル名も特に制限なく作れていたため、異なる文字コードのファイル名がひとつのファイルシステムに混在するということが起こり得ました。convmvはこの「どんな文字コードのファイル名も作れる」ということを逆手に取って、ファイル名の文字コードをユーザが決めたものに直そうとするツールです。
20
+
21
+ macOSもUnix系のOSではあるのですが、ファイルシステムで文字コードを限定しているため、他の文字コードのファイル名はつくれません。ですので、macOS上でconvmvを (特に改造せずに) 使える場面はあまりないと言えます。
22
+

1

間違いを指摘

2017/01/08 04:57

投稿

ikedas
ikedas

スコア4337

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ---
8
8
 
9
- なお、置換されてしまったファイル名ですが、[convmv](https://www.j3e.de/linux/convmv/man/)の`--unescape`オプションで (このオプションの本来の用途ではないですが) 元に戻すことができると思います。
9
+ なお、置換されてしまったファイル名ですが、[convmv](https://www.j3e.de/linux/convmv/man/)の`--unescape`オプションで (このオプションの本来の用途ではないですが) 元に戻すことができると思います (**間違い戻すことはできません。--unescapeと-f、-tを一緒に指定することはできません**)。
10
10
 
11
11
  ```
12
12
  $ convmv --unescape -f cp932 -t utf-8 %82%A0.txt