例如,样本df命令输出是
Filesystem MB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 512.00 322.96 37% 4842 7% /
/dev/hd2 4096.00 717.96 83% 68173 29% /usr
/dev/hd9var 1024.00 670.96 35% 6385 4% /var
/dev/hd3 5120.00 0.39 100% 158 10% /tmp
现在,如果我指定类似/tmp/dummy.txt的东西,我应该能够获得/ dev / hd3或者只需要hd3.
编辑:谢谢你的回答.但探测/ proc将变得非常繁琐.任何人都可以建议我一些内部可以做同样的系统调用吗?
解决方法:
df `pwd`
…超级简单,有效,并且还告诉你有多少空间……
[stackuser@rhel62 ~]$pwd
/home/stackuser
[stackuser@rhel62 ~]$df `pwd`
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda7 250056240 196130640 41223408 83% /
[stackuser@rhel62 ~]$cd isos
[stackuser@rhel62 isos]$pwd
/home/stackuser/isos
[stackuser@rhel62 isos]$df `pwd`
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 103216920 90417960 11750704 89% /mnt/sda5
[stackuser@rhel62 isos]$df $(pwd)
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 103216920 90417960 11750704 89% /mnt/sda5
…这首先是挂载点查询的可能原因.
注意那些是反引号,而替代(现代)方法,提供对斜杠和扩展的进一步控制是df $(pwd).在bash,dash,busybox,zsh上正确测试和遍历符号链接.请注意,tcsh不会喜欢$(…),所以坚持使用csh-variants中较旧的反引号样式.
pwd和df还有额外的开关供进一步享受.
标签:c-3,linux,directory,filesystems,mount
来源: https://codeday.me/bug/20190823/1696362.html