#topicpath
 ----
 #contents
 ----
 * touch -- ファイルのタイムスタンプを変更する -- [#pd916cc7]
 ブログ用ファイルを某大家さんマシン(FreeBSD:euc)と自マシン(Debian:utf8)で保存しておくため、漢字コード変換が必須となります。nkfを使ってutf8←→euc変換するのですが、新しいファイルとして生成されるため、どうしてもタイムスタンプがずれてしまう。 (日にちさえ同じであれば、数字間程度のずれは気にしないのですが、何日分かためこんでから変換するものですから、日にちが完全にずれてしまいます) 自マシンでは FD clone を使って attribute 変更しています。 大家さんマシンでは FD clone は未インストールなので、touchコマンドを使いましょう。
 
  touch -t [[CC]YY]]MMDDhhmm[.SS] file名
 
 utf-8→eucへの変換例
 
  % ls -l
  total 172
  -rw-r--r--  1 himico  himico  175646 May 10  2004 4232
  % nkf -e 4232 > 4232.euc
  % ls -l
  total 344
  -rw-r--r--  1 himico  himico  175646 May 10  2004 4232
  -rw-r--r--  1 himico  himico  175522 Aug  6 14:48 4232.euc
  % touch -t 200405100000 4232.euc 
  % ls -l
  total 344
  -rw-r--r--  1 himico  himico  175646 May 10  2004 4232
  -rw-r--r--  1 himico  himico  175522 May 10  2004 4232.euc
 
 おまけ:Debian の場合、lsコマンドでファイルの時刻をfull time で表示できます。 
  % ls -l --full-time test.f
  -rw-r--r-- 1 himico himico 2082 1999-12-06 12:15:55.000000000 +0900 test.f
 FreeBSD はどうすればよいのか… わかりません。
 
 
トップ 一覧 検索 最終更新 バックアップ  ヘルプ  RSSR