Sha256: e2984c8b2250e714f8871e60ff13b4f314df7508384b77a6ca7a80a563248276

Contents?: true

Size: 1006 Bytes

Versions: 1

Compression:

Stored size: 1006 Bytes

Contents

require 'pathname'

module Ykutils
  module PathOp
    def get_buddy_path( fname , append_name = "" , extname = "" )
      one_path = Pathname.new( fname ).expand_path
      dir_path = one_path.dirname
      base_path = one_path.basename(".*")
      append_name = "-2" unless (append_name.empty? or extname.empty?)
      extname ||= one_path.extname

      [one_path , dir_path.join( base_path.to_s + append_name + extname )]
    end

    def determine_fname_for_update( fname , ext = ".bak")
      get_buddy_path( fname , "" , ext )
    end

    def determine_fname_for_update2( fname )
      begin
        ctime = File.ctime( fname )
      rescue => ex
      end
      ctime = Time.now unless ctime
      ary = ctime.to_s.split(" ")
      extname = File.extname( fname )
      append = ["", ary[0] , ary[1].gsub(":","-")].join("-")
      get_buddy_path( fname , append , extname )
    end

    def file_ensure( fname )
      File.open( fname , "w" ).close unless File.exist?( fname )
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ykutils-0.1.0 lib/ykutils/pathop.rb