【Linux】URLエンコードされてしまったファイル名を修正する方法
URL エンコードとは
フォームでデータを送信する際に、application/x-www-form-urlencoded の仕様に 沿ってエンコードされる。
以下のようなパーセントと 16 進で変換されたもの修正する方法を記載する
テスト →%e3%83%86%e3%82%b9%e3%83%88
修正方法
以下を実行し、convmv をインストール
[example@123-45-67-89 ~]# sudo yum install convmv
修正対象ファイルが存在するか確認
[example@123-45-67-89 ~]# ls
%e3%83%86%e3%82%b9%e3%83%88.txt
convmv を実行
[example@123-45-67-89 ~]# convmv --notest --unescape ./%e3%83%86%e3%82%b9%e3%83%88.txt
デコードされたか確認
[example@123-45-67-89 ~]# ls
テスト.txt
おまけ
ディレクトリ内を再帰的にデコードする
[example@123-45-67-89 ~]# ls
%e3%83%86%e3%82%b9%e3%83%88.txt
%e8%a9%a6%e9%a8%93.txt
直下ディレクトリを再帰的にデコード
[example@123-45-67-89 ~]# convmv -r --notest --unescape ./*
デコードされたか確認
[example@123-45-67-89 ~]#
テスト.txt 試験.txt
以上です。