アフィリエイト広告を利用しています

広告

posted by fanblog

2013年10月29日

Linux ファイル名が文字化けしたファイルの名前の変更方法

Sambaサーバのデータを新サーバへ移動中
旧サーバの文字コードがEUCだったのに対し、
新サーバはUTF-8である為、

convmv -f euc-jp -t utf-8 /data --notest
※ /dataが対象のディレクトリ

で、ファイル名の文字コードを変換。

しかし、一部のファイルにシンボリックリンクを利用しており
そのリンク切れのせいで、covmvの処理が中断・・・

数も少なかったので個別にファイル名を変えて処理することに。

でも、文字化けしているファイルのファイル名の変更って・・・・???

ようやくたどり着いた方法は

1.まずはファイルのi-nodeを調べる。

ls -li

2.find&mvコマンドでファイル名を変更。

find . -inum 12345678 -ok mv ‘{}’new_name.dat \;

※12345678→inode番号

しかし新サーバのfindコマンドには-okオプションが使えない・・・
なので、

find . -inum 12345678 -print0|xargs -0 -I{} mv {} ./new_name.dat

※12345678→inode番号

で、ようやくファイル名が変更できた!





posted by はじめ at 13:57| Linux
<< 2016年03月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
カテゴリアーカイブ
最新記事
×

この広告は30日以上新しい記事の更新がないブログに表示されております。