使用不同的名稱建立從一個資料夾到另一個資料夾的符號連結?

使用不同的名稱建立從一個資料夾到另一個資料夾的符號連結?

我有兩個資料夾,其中一個是我的網頁伺服器根目錄。我想將它連結到我的專案資料夾,以便我可以透過 Git 保持最新狀態。

如果我嘗試這樣做:

ln -s /home/user/project  /var/www/html

系統會建立一個資料夾,名為專案在 html 資料夾中,並連結該資料夾。有什麼方法可以連結它,以便目錄“html”指向內容專案?他們必須同名嗎?

筆記:我還需要連結幾個隱藏檔案。我可以使用 來做到這一點ln嗎?

答案1

man ln

預設情況下,每個目的地(新連結的名稱)不應已存在。

由於您已經有一個名為 的目錄,因此將在其中建立具有目標名稱的html鏈接,即。/var/www/htmlproject

如果您想要一個符號連結/var/www/html指向,/home/user/project那麼您不應該html事先存在該目錄。因此,您應該只具有/var/www然後運行以下命令將創建所需的符號連結(除非您確定,否則不要這樣做):

ln -s /home/user/project /var/www/html

筆記:如果您使用尾部斜線(如ln -s /home/user/project /var/www/html/),您將收到錯誤:ln: target '/var/www/html' is not a directory: No such file or directory

這是一個例子:

$ pwd
/home/user/test/askubuntu

$ ls -l
total 4
drwxrwxr-x 2 user user 4096 Mar 25 00:16 foo

$ ln -s /home/user/test/bar /home/user/test/askubuntu/foo

$ ls -l
total 4
drwxrwxr-x 2 user user 4096 Mar 25 00:17 foo

$ cd foo/
$ ls -l
total 0
lrwxrwxrwx 1 user user 25 Mar 25 00:17 bar -> /home/user/test/bar

$ cd ..
$ rm -r foo/

$ ls -l
total 0

$ ln -s /home/user/test/bar /home/user/test/askubuntu/foo

$ ls -l
total 0
lrwxrwxrwx 1 user user 25 Mar 25 00:18 foo -> /home/user/test/bar

是的,您可以建立隱藏檔案的符號連結。

答案2

確保 html 目錄沒有在/var/www/.

那麼命令是:ln -s -T /home/user/project /var/www/html

相關內容