Filesystems

獲取目前分區/驅動器掛載點路徑的命令?

  • June 13, 2019

是否有替代命令與 執行相同的操作findmnt -T . -o TARGET |tail -n 1

範例:如果我目前的工作目錄是/media/username/HDD/subdir1/subdir2,則該命令將輸出/media/username/HDD/

在 Windows 中,目前驅動器/分區的最高目錄的路徑是\(也/適用於cmd),因為 Windows 確實使用驅動器號而不是“everything is a file”

Unix 工作起來更加統一和模組化,但是如何找到分區的掛載點呢?如果沒有比 更短的解findmnt -T . -o TARGET |tail -n 1,則沒有問題。我只是想知道是否有不同的方法。

看著man findmnt我看到了一些建議,這些建議似乎在查找文件系統的掛載點時可以滿足您的要求:

findmnt --first-only --noheadings --output TARGET --target "$PWD"
/home

或者可讀性較差:

findmnt -fno TARGET -T "$PWD"
/home

如果您只是想自己找到它,而不是以後在變數中使用。您不會找到比以下更短的方法df .

$ df . 
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda6      343650580 232263752  93860660  72% /home

當然,這有額外的細節,所以不能直接將設備名稱保存到變數中。但是,它很容易解析:

$ df . | grep -Po '^/\S+'
/dev/sda6
$ df . | awk '/^\//{print $1}'
/dev/sda6

但是,如果您真的想要一個命令來列印它,那麼@roaimafindmnt將是最好的。

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