当前目录的挂载信息

ctr*_*lor 35 filesystems mount disk-usage

我可以df .获取当前目录所在挂载的一些信息,并且我可以从mount. 但是我得到了很多信息(关于其他坐骑的信息)。我可以把它记下来,但我想知道是否有更好的方法。

是否有一些命令mountinfo可以mountinfo .提供我想要的信息(例如df .,但带有提供的信息mount。)


我正在使用 Debian Gnu+Linux。

mik*_*erv 36

我想你想要这样的东西:

findmnt -T .
Run Code Online (Sandbox Code Playgroud)

使用选项时

-T, --目标路径
如果路径不是挂载点文件或目录,则以findmnt相反的顺序检查路径元素以获取挂载点。您只能通过 打印某些字段-o, --output [list]
有关findmnt --help可用字段的列表,请参阅。


或者,您可以运行:

(until findmnt . ; do cd .. ; done)
Run Code Online (Sandbox Code Playgroud)

您遇到的问题是所有路径都与某物或其他东西相关,因此您只需要走树即可。每次。

findmnt是 util-linux 包的成员,并且已经存在几年了。到目前为止,无论您的发行版是什么,如果您也有该mount工具,它应该已经安装在您的 Linux 机器上。

man mount | grep findmnt -B1 -m1
For  more robust and customizable output use
findmnt(8),  especially  in  your   scripts.
Run Code Online (Sandbox Code Playgroud)

findmnt将在没有安装点参数的情况下打印出所有安装的信息,并且只打印带有一个的参数。该-D效仿df选项。没有-D它的输出类似于mount's - 但更可配置。findmnt --help自己试试看。

我把它放在一个子shell中,所以当前shell的当前目录不会改变。

所以:

mkdir -p /tmp/1/2/3/4/5/6 && cd $_ 
(until findmnt . ; do cd .. ; done && findmnt -D .) && pwd
Run Code Online (Sandbox Code Playgroud)

输出

TARGET SOURCE FSTYPE OPTIONS
/tmp   tmpfs  tmpfs  rw
SOURCE FSTYPE  SIZE   USED AVAIL USE% TARGET
tmpfs  tmpfs  11.8G 839.7M   11G   7% /tmp
/tmp/1/2/3/4/5/6
Run Code Online (Sandbox Code Playgroud)

如果您没有-D可用的选项(在旧版本的 util-linux 中没有),那么您不必担心 - 在任何情况下它都只不过是一个方便的开关。请注意它为每次调用生成的列标题 - 您可以使用-output 开关为每次调用包含或排除这些标题。我可以获得与-D可能提供的相同的输出,例如:

 findmnt /tmp -o SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGET
Run Code Online (Sandbox Code Playgroud)

输出

SOURCE FSTYPE  SIZE  USED AVAIL USE% TARGET
tmpfs  tmpfs  11.8G  1.1G 10.6G  10% /tmp
Run Code Online (Sandbox Code Playgroud)

  • 我的 `findmnt` 版本有一个 `-T` 选项,可以绕过 `cd ..` 循环。可能对其他人有用。 (2认同)