« 冷え込み | トップページ | キャリパピストン シールキット発注 »

2006年11月 9日 (木)

ファイル名の文字コード変換

日本語ファイル名が存在する状態で locale を EUC-JP から UTF-8 に変更したため、ところどころで不都合が生じていた。
対象となるファイル数が少なかったため、以下のように半手動で対処することにした。
  1. 日本語ファイル名を持つファイルのみ work ディレクトリに移す
  2. ls -l | nkf -w > lu として lu に状態を保存しておく
  3. mv lu .. lu を上のディレクトリに移す
  4. i=0; for f in *; do mv $f $i; done として、数字のみのファイル名にしてしまう。
  5. 次のようなファイル mmvv.sh を作る
  6. #!/bin/bashmv 0 日本語1mv 1 日本語2   :
1行目がないと、Can't execute binary file とエラーになる。日本語1, 日本語2 は 保存してある lu から持ってくる。vim のブロックカット/ペーストを使用した。コマンドラインから cut コマンド、paste コマンドを使用してもいいだろう。
  1. bash mmvv.sh で実行する
  2. ls -l として、保存してある lu と差がないか確認する。たまにずれてる。
for の in * を in `ls -1` としたほうが確実かも。
  1. 必要なら個別に修正して、work から元のディレクトリに戻す

« 冷え込み | トップページ | キャリパピストン シールキット発注 »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: ファイル名の文字コード変換:

« 冷え込み | トップページ | キャリパピストン シールキット発注 »

2026年7月
      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  
無料ブログはココログ