我正在重构一些C#代码,其中一部分是重做一些引用,因为我们完全重做了文件夹结构.我想做的只是进入.csproj或.sln文件并修改路径.
然而,一些参考文献有类似的路径
"../../../../../../ThirdParty/SomeMicrosoftLibrary/bin/Debug/SomeMicrosoftLibrary.dll
因为我们已经移动了所有东西,我需要找到新的相对路径.但是我绝对不想尝试这样做(弄清楚我需要投入多少斜线和时间段),因为它总是让人觉得有点受欢迎或缺少科学.
是否有一些简单的方法(实用程序,脚本,代码片段)来说"这里的文件A,这里是文件B,文件B相对于文件A的相对路径是多少?"
使用Ruby:
$ ruby -e "require 'pathname'; puts Pathname.new('foo/bar').relative_path_from(Pathname.new('baz/x/y/z')).to_s" ../../../../foo/bar
我很确定Python有类似的方法,但我没有它的方便.