Symlink
什麼時候應該創建符號連結而不是創建別名?
製作符號連結可能根本無法與製作別名相提並論。但是從我目前對符號連結的理解來看,它們與設置別名的作用相同:它們定義了一個新命令,您可以在終端中輸入該命令以執行具有不同名稱的操作
什麼時候應該創建別名,什麼時候應該創建符號連結?
最大的實際區別是:
- 別名在您的配置文件腳本中定義,它們通常特定於您,並且僅在 shell 中工作。
- 當執行檔連結到 bin 目錄中的新名稱時,它是可供所有程序和使用者使用的系統命令
細節
別名可以包含選項和參數,讓您為命令設置首選預設選項:
alias ll='ls -l'
和文件無關。
符號連結在文件系統中創建一個條目,該條目引用文件系統中的某個其他文件:
link -s ~/somedirectory/mydoc.txt ~/someotherdirectory
將在其他目錄中創建指向 mydoc.txt 的連結
然而。
如果連結用於執行檔,那麼它可以為命令提供新名稱,就像別名一樣。例如在我的系統上
ls -l /usr/bin/vi
說lrwxr-xr-x 1 root wheel 3B 19 Nov 2019 /usr/bin/vi -> vim
所以 now
vi
是一個與vim
. 同樣,許多系統都安裝了python2
&python3
,然後python
將符號連結到其中之一。