Linux
ln [-s] 已有的檔案或目錄名稱 檔案或目錄名稱硬連結
語法:ln <目的> <來源>1.將一個檔案硬連結和多個檔案以後,假設是5個,刪除其中1~4個不會影響本來的檔案
2.只能是同一個檔案系統
3.inode 一樣
4.只能操作檔案
5.ls -l 查看時,第一個並不是L,是-
軟連結
語法:ln -s <目的> <來源>1.目的檔案若被刪除,則來源會出現錯誤
2.可跨越不同的檔案系統
3.inode 不同
4.ls -l 查看時,是 L
5.-s = --symbolic
還有一個參數 f,意思是如果目的檔已經有了,會先刪除再新增
Windows
以下是用Windows 7 的實驗,必需有管理的權限來操作,而且來源的檔案或目錄不可存在mklink [/H /S /J] 檔案或目錄名稱 已有的檔案或目錄名稱
先切換到想連結的地方,然後如下操作
硬連結(Hard)
語法:mklink -h <來源> <目的>1.只對檔案有效,如果目的為目錄,會出現「存取被拒」
2.也只能在同個槽才行,如 C 槽不能到 D 槽
軟連結(Symbolic/Soft)
語法:針對檔案:mklink <來源> <目的>,如果目的為目錄會成功,但沒作用,無意義
針對目錄:mklink -d <來源> <目的>,如果目的為檔案會成功,但點下去會報錯,無意義
NTFS 連結(Junction)
故名思義,檔案系統是NTFS才可使用,在X槽按右鍵-->屬性的一般活頁標籤可看到但只能使用在目錄
語法:mklink -j <來源> <目的>,目的為檔案會成功,但點下去會報錯,無意義
軟連結的目錄和 NTFS 連結的差異
1.右鍵屬性時,軟連結會多一個 Shortcut 的活頁標籤2.使用 dir 指令時,軟連結是<SYMLINK>,NTFS 連結是<JUNCTION>
3.複製時不同,將這兩個連結複製到其他的目錄後
.軟連結只有原本的目錄才可以連
.NTFS 連結無法複製,複製完後到目的資料夾貼上時,沒有作用
4.移動時不同,將這兩個連結剪下到其他的目錄貼上後
.軟連結真的會移動,也可連結
.NTFS 連結會複製一份到新的目錄,原本的還可以連結,但複製後的不行
※注意 NTFS 連結還會將原本目錄的所有檔案、目錄全部移動到新的目錄,造成原本的目錄 是空的情形,此時所有連結裡面都是空的
不好意思,一直有個問題,但到現在爬了很多文章還是沒找到解決方法
回覆刪除Unity這個程式無法選擇安裝位置,默認就是裝到C槽,然而我現在的C槽是容量較小的SSD固態硬碟,因此為了減少C槽容量的減少我有上網爬過文章,但卻碰上了一點錯誤
https://www.itread01.com/content/1542623649.html
主要錯誤出現在我輸入完第二行的mklink那行後出現了"存取被拒絕"
一直都找不到原因,爬文也上網爬過了,始終沒有解決方法,實在是很頭痛
爬著爬著看到你這篇文章,不曉得講的是不是同一個東西?(完全是這方面外行)
不好意思,我現在才看到有人留言,google 居然沒有通知(XD),
回覆刪除首先 Unity 我沒有裝過,如果照你給我的這個連結,用的是 -j,是 NTFS 的軟連結,
只能是目錄,或者你真的是沒有權限,要對來源和目的資料夾有相應的權限才行(右鍵內容/安全性)