如何取得特定文件的文件系統資訊?

如何取得特定文件的文件系統資訊?

查找有關文件的文件系統資訊的最佳方法是什麼。

例如,如果我有一個文件

/media/xyz/path/to/file.ext

/etc/fstab包含

//server1/Share1 /media/xyz cifs option1=value1,...

如何確定該檔案位於 Samba 共用上、是否具有本機路徑/path/to/file.ext以及使用哪些選項掛載了檔案系統?

mount解析便攜式解決方案的輸出嗎?還是解析findmnt?有沒有符合 POSIX 標準的方法來實現這一點?

答案1

stat(1) 是一種尋找其中一些資訊的便攜式方法,例如:

stat --file-system --format="%T" /media/xyz/path/to/file.ext

其他一切都非常特定於作業系統,在最新的 Linux 系統上,您可以輕鬆地findmnt --output在腳本中使用。

答案2

如果我正確理解您的需求,並結合先前答案中的一些內容,以下可能就是您所需要的。在腳本中定義(例如,在您的 .bashrc 中)-

findpart ()
{
df -h $1|sed 1d|cut -d" " -f1|xargs findmnt -n
}

然後你可以根據需要運行它

findpart /foo/file.ext

相關內容