Symlink
如何創建具有不同名稱的文件夾符號連結?
我想創建一個符號連結
~/.pm2/logs -> /opt/myapp/log
當我跑
ln -sFf /opt/myapp/log ~/.pm2/logs
我得到一個符號連結
~/.pm2/logs/log -> /opt/myapp/log
這不是我想要的。
如果可能的話,我更喜歡與 POSIX 兼容的解決方案。
您已經在.
~/.pm2/logs
由於該目錄存在,因此將符號連結放在其中。您是否希望這
~/.pm2/logs
是一個符號連結而不是目錄,那麼您必須首先刪除或重命名該現有目錄。
正如其他答案所說,那裡已經有一個目錄。
為避免這種情況並獲得錯誤消息,請使用該
-T
選項,不幸的是我不認為這是 Posix(它是 GNU)。來自 Gnu
ln
手冊(對於 cp 和 mv 相同)。ln [OPTION]... [-T] TARGET LINK_NAME (1st form) ln [OPTION]... TARGET (2nd form) ln [OPTION]... TARGET... DIRECTORY (3rd form) ln [OPTION]... -t DIRECTORY TARGET... (4th form)
注意沒有 的表格 1
-T
與表格 3 不明確(兩者都有兩個參數)。在 Posix 中,您可以通過在表格 3 中將 a 放在目錄名稱的末尾來強制這種非歧義性
/
,但我認為您無法以相反的方式做任何事情。這就是 Gnu 添加該-T
選項的原因。