在Linux中,如果你有一個你知道是符號鏈接的文件的路徑,你如何以編程方式確定(在C或C++中)它指向的文件的路徑?如何確定符號鏈接指向的文件的路徑?
5
A
回答
8
readlink
函數。做一個man 2 readlink
。這個函數是Posix API的一部分,所以它幾乎適用於任何Unix。
如果路徑以'/'
開頭,那麼它是一個絕對符號鏈接,並且它具有它引用的文件的完整絕對路徑(這可能是另一個符號鏈接,您將不得不重複該過程) 。
如果路徑沒有以'/
'開頭,那麼它是一個相對鏈接,並且相對於符號鏈接所在的目錄進行解釋。您可以合適地組合路徑以找出真實文件名。
當然,有時使用符號鏈接來存儲實際上不是路徑的信息。有時程序爲了鎖定目的而在其中存儲PID或其他這樣的信息。創建符號鏈接的調用是可以在NFS掛載的文件系統上執行的更可靠的原子操作之一。
另外,在我的Fedora系統上,如果你使用man 7 symlink
,你會得到關於符號鏈接的長篇討論,它們在各種情況下的行爲以及操縱它們或受它們影響的函數的破壞。
5
在POSIX或BSD系統上使用readlink()
相關問題
- 1. 如何讀取斷開的符號鏈接指向的路徑?
- 2. JAVA如何找到符號鏈接指向的目標文件路徑?
- 3. python符號鏈接指向的文件
- 4. 如何確定符號路徑的值
- 5. 獲取實際路徑符號鏈接指向
- 6. perl符號鏈接路徑
- 7. 指向絕對路徑的鏈接
- 8. 獲取它指向的鏈接路徑?
- 9. 如何從符號鏈接獲取文件路徑?
- 10. 如何獲取符號鏈接指向的符號鏈接模板中的id?
- 11. 如何找到指向特定文件夾的所有符號鏈接?
- 12. 路徑名中的PHP符號鏈接
- 13. 檢索符號鏈接的路徑
- 14. 如何枚舉指向文件的所有NTFS硬鏈接的路徑?
- 15. 生成文件,符號鏈接文件夾&相對路徑
- 16. 如何指定flowconfig文件的路徑?
- 17. 使用符號鏈接的PHP/Linux讀取文件路徑
- 18. WriteFile指向一個網絡卷的文件的符號鏈接
- 19. 重定向的鏈接路徑
- 20. 根據root + web鏈接確定文件/文件夾路徑?
- 21. 如果路徑符號鏈接到另一個路徑
- 22. Laravel路由:如何創建指向PDF文件的鏈接
- 23. 如何檢查提供的路徑是符號鏈接還是常規路徑
- 24. gcc包含路徑和符號鏈接
- 25. 如何旋轉符號鏈接的完整路徑?
- 26. 如何看到完整的符號鏈接路徑
- 27. 如何確保Chef中的符號鏈接上存在目錄路徑?
- 28. paramiko如何指定文件夾路徑
- 29. 創建符號鏈接到路徑中的所有文件/文件夾
- 30. 如何指向正確的圖像,給正確的路徑