關於unix符號鏈接是指向另一個文件的指針。不僅文件,而且符號鏈接都有ctime,mtime,...。我知道符號鏈接的時間可以被訪問,因爲ls
顯示它。如果我使用ruby的File#ctime
,File#mtime
,...之一,我總是得到符號鏈接指向的文件的屬性,而不是符號鏈接。我如何讀取ruby中的這個值?如果這在ruby中是不可能的,請告訴我如何用C語言來完成。在這種情況下,我會寫自己的c擴展名。如何獲取符號鏈接的ctime,mtime,...?
6
A
回答
10
使用File#lstat()
。例如:
# This is a dummy symlink; there's no file named "foo".
ln -s foo bar
# Run irb.
irb(main):001:0> File.lstat("bar")
=> #<File::Stat dev=0x801, ino=90113, mode=0120777, nlink=1, uid=1000, gid=1000, rdev=0x0, size=3, blksize=4096, blocks=0, atime=2010-01-05 17:59:06 -0500, mtime=2010-01-05 17:59:05 -0500, ctime=2010-01-05 17:59:05 -0500>
# Get the mtime of the link.
irb(main):002:0> File.lstat("bar").mtime
=> 2010-01-05 17:59:05 -0500
1
lstat()
可以在C中做到這一點;不知道是否有Ruby等價物。
1
有不是符號鏈接的唯一的屬性和最終目標的屬性,還可以,如果符號鏈接本身到另一個符號鏈接,一個或多箇中間步驟;爲了獲得所有的屬性,你需要在readlink循環中執行lstats。
相關問題
- 1. 獲取納秒級精度的atime,mtime和ctime字段(文件?)
- 2. 如何獲取符號鏈接指向的符號鏈接模板中的id?
- 3. 如何獲取符號鏈接文件,看非符號鏈接的目錄
- 4. ctime,mtime,控制目錄,windows,linux
- 5. 如何獲取符號鏈接的名稱?一個命令的
- 6. 如何獲取符號鏈接列表,但不包括斷開的鏈接?
- 7. 如何獲取當前符號鏈接目錄的父目錄?
- 8. 如何獲取python中符號鏈接的修改日期?
- 9. 如何獲取Java承認在cygwin下符號鏈接
- 10. 如何從Windows鏈接器獲取符號?
- 11. 如何從符號鏈接獲取文件路徑?
- 12. .htaccess或符號鏈接(符號鏈接)
- 13. 納秒分辨率mtime/ctime/atime與節點的fs.stat
- 14. 符號鏈接
- 15. 符號鏈接
- 16. 軟鏈接atime和mtime修改
- 17. 如何創建PHPUnit的符號鏈接?
- 18. 如何讀取斷開的符號鏈接指向的路徑?
- 19. Python:使用文件ctime和mtime差異備份
- 20. Nginx的PHP的符號鏈接獲取文檔根
- 21. 什麼是符號鏈接以及如何創建符號鏈接?
- 22. 如何獲得Python中的符號鏈接目標?
- 23. 兩個符號鏈接之間的符號鏈接
- 24. Apache的符號鏈接符號鏈接返回HTTP 500錯誤
- 25. bash - 獲取特定文件的mtime?
- 26. 如何一次獲取所有重複的符號鏈接器錯誤?
- 27. 如何獲取WSO2註冊表資源的符號鏈接信息?
- 28. 如何讓Apache讀取符號鏈接到不同的分區?
- 29. 獲取目錄中最後創建的符號鏈接文件
- 30. Apache和象徵符號鏈接獲取父目錄的PHP
似乎有一個'File.lstat'在紅寶石,這是相同的。 – johannes 2010-01-05 23:06:47