Windows 中如何創建一個指向某相對路徑的快捷方式(即快捷方式的目標路徑為某相對路徑) ?如果不能,為什麼?

在Winodws下默認直接創建的快捷方式是基於絕對路徑的,當整個文件夾進行挪動後,此前的快捷方式便不能再用。

那麼如何創建一個指向相對路徑的快捷方式。使其整個文件夾進行挪動後,快捷方式依然可以使用。

就像:編程中的project鏈接文件的時候就可以用相對路徑,整個工程在挪動後依然可以正常編輯。


其實你可以用symbolic link。

在你原來的文件夾位置創建一個link指向移動後的文件夾位置,這樣原有的快捷方式還是可以訪問到原來的文件夾位置,再由link指向新的位置。

這個方法和環境變數你都可以試試。


你的文件可以移動,但是相對位置不能改變,這樣才可以創建基於相對路徑的快捷方式.

具體如下: (以everything.exe為例)

如下圖所示操作,寫上 explorer.exe Everything-1.2.1.371everything.exe

其中,

explorer.exe 是資源管理器

Everything-1.2.1.371everything.exe 是指要打開的Everything-1.2.1.371文件夾中的 everything.exe 主程序

兩者之間有空格; 並且這個反斜桿 是要注意的地方,可能寫成 / 就不行了。

最後把快捷方式的"起始位置"清空.

當然如果你不想使用explorer,也可以使用cmd來打開.

%windir%system32cmd.exe /c start relatepathyourapp.exe


謝不邀。

20161101編輯。

好巧啊,3年前的問題今天才看到(因為今天也遇到這個問題了)。

樓主的意思是:

只要設置了一個指向目標文件的快捷方式,無論目標文件移動到哪裡,快捷方式都是有效的。

我接下來的回答:

差不多可以實現這個,但是需要每次目標文件移動一個位置後,需要去修改一下「環境變數」。下面將會說到環境變數的強大之處。

首先,本人的系統是Windows 7,win 8 和 win 10上沒有測試過。

這個問題的回答,主要是針對有大量文件或程序存放到一個「目標文件夾」中,這些文件或程序快捷方式的問題。如果說,你有很多存放在不同文件夾的文件或者程序,那麼此方法不適用,請自行跳過。

本人學生黨一枚,目前建立了一個文獻的「庫」文件夾,說白了就是把所有文獻直接丟到這個目標文件夾裡面,然後設置快捷方式,更改快捷方式的絕對變數為環境變數即可。下面將詳細講一下過程。

1. 科普。

像%CommonProgramFiles%這種的環境變數,指向的是「你的系統盤Program FilesCommon Files」,假如你的系統盤是C盤,那麼在這裡指向的就是「C:Program FilesCommon Files」。

Win+R打開運行窗口,在這裡進入到這個文件夾有兩種方式,一種是直接輸入C:Program FilesCommon Files,也就是絕對路徑;另一種就是%CommonProgramFiles%,也就樓主所說的「相對路徑」,不過這個實際上叫做「環境變數」。%CommonProgramFiles%僅僅是windows系統定義的一種,當然,如果實現樓主所說功能的話,需要自己添加環境變數。

2. 添加環境變數。

下面正式進入主題,假如,在桌面上有一個叫做「Sasuke」的目標文件夾(當然,原則上可以是任何位置的任何文件夾。啊?為什麼是文件夾而不是文件?因為你現在要設置一堆文件所共有的文件夾啊,如果是針對單個文件的,那我建議你不要搞這麼麻煩,直接一個普通的快捷方式解決問題了)。此時,你需要添加一個環境變數(分為系統環境變數和用戶環境變數,顧名思義,前者是針對本計算機所有用戶的環境變數)。

右鍵"計算機","屬性",右下角的「更改設置」,

然後選擇「高級」,右下角的「環境變數」,

在系統變數中(當然如果你只想對本計算機你當前登錄的賬戶起作用,用戶變數也可以),「新建」,變數名為「Sasuke」(任何你想要的名字,注意名字里沒有引號),變數值為絕對路徑「C:UsersWjf0920DesktopSasuke」(路徑里沒有引號),然後點完成。好了,現在為止你已經完成了一半。

3. 設置快捷方式。

現在回到桌面,在目標文件夾「Sasuke」上創建一個快捷方式,然後右鍵-屬性,會在目標看到「C:UsersWjf0920DesktopSasuke」,把它改成%Sasuke%(就是%你剛剛設置的名字%),點應用。如何檢驗有沒有成功,你只需要點一下快捷方式看看能不能打開目標文件即可(注意起始位置這裡,不在桌面設置的快捷方式可能會有起始位置路徑,現在一律刪除該路徑,保證和圖片中的一致就行,不然可能會出現打不開的問題哦)。

有一點注意,如果目標文件是文件夾裡面的文件,那麼是需要改成路徑「%Sasuke%文件名.文件格式」,即可。

4. 移動目標文件時,要修改環境變數所指向的路徑。

前方高騰!

有沒有人猜到結果!!!

現在,如果把目標文件移到電腦上任何一個位置,那麼快捷方式「Sasuke」該怎麼辦?依然是,右鍵"計算機","屬性",右下角的「更改設置」,然後選擇「高級」,右下角的「環境變數」,找到之前改過的環境變數「Sasuke」,在其變數值的地方,輸入新的目標文件夾的路徑即可。

由於你的快捷方式使用%Sasuke%這種相對方式命名,所以不需要擔心目標文件夾換了之後,快捷方式的指向問題。在目標文件夾移動位置後,只需要更改環境變數中的路徑即可,不需要重新一個個文件的去建立快捷方式了。

如果失敗了怎麼辦?

1) 可能是你在設置快捷方式的時候,起始位置路徑沒有清空。

2) 可能是你把""打成了"/"。

3) 我是小白,我想不出來了。。。orz。。。不早了,睡吧,晚安。


只有快捷方式和目標文件(夾)保持原有的相對性(相對路徑的層級關係不變),他們一起移動時才可以。快捷方式上相對路徑指向的目標也是固定的。單獨移動目標位置肯定是不可以的。只不過相對路徑是以快捷方式文件所在目錄為起始點算起,而絕對路徑從某一根目錄往下算起(比如E盤根目錄)


推薦閱讀:

為什麼 Windows 不提供內存文件系統?
為什麼 OS X 比 Windows 快那麼多,是硬體的緣故么?
為什麼linux下的軟體要比windows下的軟體小很多?
如何看待 Windows 10 的用戶界面設計?
大家對重裝系統有什麼看法?

TAG:MicrosoftWindows | 計算機 | 電腦技巧 | Windows81 |