... / nVoxel主页 » 生活琐事 » Windows下创建相对路径的快捷方式

Windows下创建相对路径的快捷方式

作者:T.n.T发表时间:2015-9-10本文链接:http://www.nvoxel.com/windows-relative-shorcut.html

今天正好在整理文件夹,发现一些重复的文件很占空间,想通过windows快捷方式的把这些文件组织起来,期间遇到这样一个问题,怎么创建一个相对路径的快捷方式呢?

现在假设有一个如此结构的windows目录
D盘下有三个文件夹(1-文件夹, 2-文件夹二, 3-文件夹三)
然后文件夹二下边还有文件夹和文件 (2-文件夹二\文件夹二&2.1\原始文档.txt)

D:
测试文件夹Root

├─1-文件夹一
├─2-文件夹二
│ └─文件夹二&2.1
│ 原始文档.txt

└─3-文件夹三

在“1-文件夹一”这个文件夹下边创建一个目标为“原始文档.txt”的快捷方式,如果我们用一般的方法创建快捷方式的话,得到的快捷方式指向的是一个绝对路径:“D:\测试文件夹Root\2-文件夹二\文件夹二&2.1\原始文档.txt”,如下图:
shortcut一般方法

如果把这整个“测试文件夹Root”拷贝到E盘的话,刚刚创建的那个快捷方式就失效了,因此有没有一种办法处理这个问题:在“1-文件夹一”这个文件夹下创建一个“原始文档.txt”的快捷方式,这个快捷方式的路径是相对“测试文件夹Root”,把整个根目录文件夹拷贝到其它地方,而不论盘符是多少呢,快捷方式不会失效!

现在就来介绍下,快捷方式有个“目标”栏目和“起始位置”栏目,要使用相对路径,需要修改如下:
删除“起始位置”内容,同时把“目标”栏目修改为:

%SystemRoot%\explorer.exe /n,”..\2-文件夹二\文件夹二&2.1\原始文档.txt”

如下图
shortcut相对路径-无起始位置

修改后的路径中,..\ 表示往上一层,当删除起始位置之后,“目标”一栏中的路径是相对快捷方式所在文件夹的位置的(这里就是“1-文件夹一”),根目录“测试文件夹Root”在“1-文件夹一”上一层,所以填上..\ 就表示到了上一层的根目录,要索引到原始文档就只要以根目录为起点填上对应的目录就好啦,这里就是:2-文件夹二\文件夹二&2.1\原始文档.txt。以上两部分连起来就是 我们的最终相对路径:

..\2-文件夹二\文件夹二&2.1\原始文档.txt

前面的那个%SystemRoot%\explorer.exe /n,表示启用系统的explorer.exe(也就是我们平时用的资源管理器)

这个快捷方式的本质就是:创建一个资源管理器(explorer.exe)的快捷方式,同时把相对路径作为参数传给它,通过这种中转的方式打开了所需要的文件!

到这一个相对路径的快捷方式就结束了,以后随意把这个主的根目录(“测试文件夹Root”)剪切到哪都能打开对应文件啦!(这样做的坏处就是这个快捷方式相对于根目录的位置不能变)

Explorer.exe有很多参数可以加,了解链接如下:explorer.exe参数

最后放一个打开目标所在文件夹的写法

%SystemRoot%\explorer.exe /n,”..\2-文件夹二\文件夹二&2.1\原始文档.txt”,/select,vbNormalFocus

其中vbNormalFocus的写法可以看下这里:关于vbNormalFocus

 
已有1位用户发表观点 / 回复主题 / 回到主页
  1. “%windir%\system32\cmd.exe /c start”+“路径” 也可以实现的~只不过用的是CMD

评论

(必填)


不是'叮'的一声变成别的东西才算是奇妙,那个走得很慢很慢,慢得不像话但是非常肯定,一直都在走得钟就已经很奇妙了
相遇 相识 相知 相爱 然后分开 / Themes by T.n.T