引越しツール

タイムスタンプを無視して引っ越すところだった

 #!/usr/bin/ruby -Ke
 srcdir="./olddata"
 distdir="./data"
 Dir.glob("#{srcdir}/*"){|dname|
   dddir = "#{distdir}/#{`uuidgen`.chop!}"
   `mkdir #{dddir}`
   File.open("#{dddir}/subject.txt","w"){|wfile| wfile.write(CGI::unescape(File.basename(dname)))}
   `touch -t #{File.mtime(dname).strftime("%Y%m%d%H%M.%S")} #{dddir}/subject.txt`
   Dir.glob("#{dname}/*"){|fname|
     if File.basename(fname)!='current.txt'
       `cp #{fname} #{dddir}`
       `touch -t #{File.mtime(fname).strftime("%Y%m%d%H%M.%S")} #{dddir}/#{File.basename(fname)}`
     else
       `cp #{fname} #{dddir}/content.txt`
       `touch -t #{File.mtime(fname).strftime("%Y%m%d%H%M.%S")} #{dddir}/content.txt`
     end
   }
   `touch -t #{File.mtime(dname).strftime("%Y%m%d%H%M.%S")} #{dddir}`
 }