2011-02-01 14 views

答えて

1

UNC pathがパスに存在しているどちらも、サーバーおよび共有の名前を知っている必要がありますあなたが何かを探している場合を除き、:

def File.to_unc(path, server="localhost", share=nil) 
    parts = path.split(File::SEPARATOR) 
    parts.shift while parts.first.empty? 
    if share 
    parts.unshift share 
    else 
    # Assumes the drive will always be a single letter up front 
    parts[0] = "#{parts[0][0,1]}$" 
    end 
    parts.unshift server 
    "\\\\#{parts.join('\\')}" 
end 

puts File.to_unc("C:/Users/bla/bla2/asdf-ut-script.js") 
#=> \\localhost\C$\Users\bla\bla2\asdf-ut-script.js 

puts File.to_unc("C:/Users/bla/bla2/asdf-ut-script.js", 'filepile') 
#=> \\filepile\C$\Users\bla\bla2\asdf-ut-script.js 

puts File.to_unc("/bla/bla2/asdf-ut-script.js", 'filepile', 'HOME') 
#=> \\filepile\HOME\bla\bla2\asdf-ut-script.js 
+0

感謝:
\\localhost\C$\Users\bla\bla2\asdf-ut-script.js

これはあなたが望むものである場合s m8は大変感謝しています! – wmitchell

関連する問題