Linux

檢查文件夾是否是已安裝的遠端文件系統

  • August 10, 2021

檢查給定文件夾是否位於 shell 腳本中已安裝的遠端 (nfs) 文件系統上的最佳方法是什麼(可靠、便攜等)?

我正在尋找一個看起來像這樣的命令:

chk-remote-mountpoint /my/path/to/folder 

正如Stephane所說,“對此沒有通用的 Unix 答案”。

我發現我的問題的最佳解決方案:

df -P -T /my/path/to/folder | tail -n +2 | awk '{print $2}'

將返回文件系統類型,例如:nfsext3.

-T選項**不是標準**的,因此它可能不適用於其他 Unix/Linux 系統…

根據Gilles在下面的評論:“這適用於任何非嵌入式 Linux,但不適用於 BusyBox、*BSD 等。”

你可以使用 GNU stat

%m找出掛載點。

$ stat --format=%m /usr/src/linux
/usr/src

%T(在文件系統模式下)找出文件系統的名稱。

$ stat --file-system --format=%T /usr/src/linux
reiserfs

因此,您知道/usr/src/linux,在我的系統上,它儲存在一個文件系統中,該文件系統已安裝/usr/src並具有文件系統類型reiserfs

另請參閱以man stat供進一步參考。這是一個非常通用的命令,當您需要有關文件的資訊並且不想回grep | awk退到守衛時,它幾乎總是有用的。

引用自:https://unix.stackexchange.com/questions/72223