メモしよっと

なんでもメモするブログです。

WindowsからLinuxに日本語ファイル名のファイルを転送したら、認識されなかった件

困ったこと

うっかりWindowsで作成した日本をファイル名を、そのままlinux(ubuntu)に転送してしまった。 lsすると一応ファイル名は日本語で表示されていた。


> ls
こんにちは.txt

よかったー!と思ったのもつかの間、名前を変更しようとmvしても、「ファイルが見つかりません」と表示されるばかり。


mv こんにちは.txt hello.txt

もちろんrmやcpやすべてのコマンドでダメ。 そりゃそうか…文字コードが違うんだから。

削除もできなくて困っていたのだけど、lsコマンドの--show-control-charオプションで、何とか解決できました。

ls --show-control-chars

--show-control-charsは、システムが表示できない文字をそのまま表示するコマンド。

解決

これをバッククォートで括って、mvコマンドで実行させることにより、認識に成功。ファイルがリネームできました。


> mv `ls --show-control-char こんにちは.txt `  hello.jpg

めでたしめでたし。