有没有一种快速而简单的方法,可以通过脚本或Perl编程语言来判断一个路径是位于远程文件系统(如nfs)还是本地文件系统?或者说,唯一的方法就是解析/etc/fstab并检查文件系统类型?
有没有一种快速而简单的方法,可以通过脚本或Perl编程语言来判断一个路径是位于远程文件系统(如nfs)还是本地文件系统?或者说,唯一的方法就是解析/etc/fstab并检查文件系统类型?
stat -f -c %T <filename>
应该可以满足您的需求。您可能还需要使用-l
df -T $dir | tail -1 | awk '{print $2;}'
df
命令,仅获取其所在设备的信息,例如对于当前目录:df .
df . | tail -1 | awk '{print $1}'
我已在Solaris 7、8、9和10上进行了测试,似乎很可靠。
/bin/df -g <filename> | tail -2 | head -1 | awk '{print $1}'
如果你有文件系统类型,应该使用它来挂载,而不是在挂载点中匹配“主机:路径”。
print "remote" if (stat($filename))[0] < 0