Symlink
什麼文件模式是符號連結?
什麼文件模式表明一個文件是符號連結(symlink)?
我的案例是檢測 git 儲存庫(及其歷史記錄)中的符號連結。我的印像是符號連結是符號連結,因為它的文件模式,文件模式是工具
chmod
設置的。
文件模式涵蓋兩個不同的概念:文件類型和文件權限。文件的模式由呼叫
st_mode
結果中的值表示,並一起呈現;有關詳細資訊,請參閱了解 UNIX 權限和文件類型。stat(2)``ls -l
一旦創建了文件,其類型就無法更改。此外,在 Linux 系統上,您不能指定符號連結的權限;重要的是目標的許可(實際上是完整模式,因為這也決定了符號連結的行為)。請參閱文件權限如何應用於符號連結?詳情。在 Mac OS X 上,符號連結可以有自己的權限。
最後,
git
使用一個簡化的模型,辨識模式的數量有限:
040000
對於目錄100644
對於普通文件100755
對於執行檔120000
對於符號連結您可以使用以下命令查看這些值
git cat-file -p 'master^{tree}'
;有關詳細資訊,請參閱Pro Git。