是否有一个快速和肮脏的方式告诉编程,在shell脚本或Perl中,路径是否位于远程文件系统(NFS等)或本地的?或者是解析/ etc/fstab并检查文件系统类型的唯一方法吗?如何判断文件是否在使用Perl的远程文件系统上?
11
A
回答
13
stat -f -c %T <filename>
应该做你想做的。您可能还需要-l
2
您可以使用“DF-T”来获得文件系统类型的目录,或使用-t选项来限制到特定类型的报告(如NFS),如果它回来了“不处理任何文件系统”,那么它不是你要找的那个。
df -T $dir | tail -1 | awk '{print $2;}'
0
在某些系统中,设备号为负NFS文件。因此,
print "remote" if (stat($filename))[0] < 0
2
如果使用df
上的一个目录,仅保留设备的信息驻留在,例如对于当前目录:
df .
然后,你可以解析输出,
df . | tail -1 | awk '{print $1}'
获取设备名称。
1
我已经测试了solaris7,8,9 & 10以下,它似乎是可靠的
/bin/df -g <filename> | tail -2 | head -1 | awk '{print $1}'
应该给你有FS型,而不是试图以匹配“主机:路径”中你的挂载点。
相关问题
- 1. 如何判断文件是否是使用PHP的文本?
- 2. 如何判断使用Winsock(VB6)是否已达到远程文件的结尾?
- 3. 如何在Windows上使用Python访问远程文件系统?
- 4. 总是返回假,而判断文件是否存在在Perl
- 5. 如何判断文件是否是nv12格式的文件?
- 6. 使用powershell检查远程系统中是否存在文件/文件夹
- 7. 如何判断URL是本地文件路径还是远程文件路径
- 8. 如何判断一个FTP文件是否存在使用ruby?
- 9. 如何判断文本框是否专注于操作系统?
- 10. 远程Windows系统上的文件IO
- 11. PHP:判断文件是否存在?
- 12. 如何判断文件是否是Linux内核编程中的“..”文件?
- 13. 如何使用Perl检查远程服务器上是否存在文件?
- 14. 如何判断是否使用stream_copy_to_stream下载了整个文件?
- 15. 如何判断某个Excel文件是否使用VB.NET打开?
- 16. 如何在Java中使用远程Unix系统“tail -f”文件?
- 17. 使用Java在远程系统上执行批处理文件
- 18. 在Perl中有一种方法可以判断一个perl进程是否在使用特定的文件
- 19. 如何判断一个Windows PE文件是编程控制台子系统还是Windows子系统?
- 20. 如何判断两个图像文件在Perl中是否相同?
- 21. 如何判断是否存在具有此名称的文件?
- 22. 用Monit监控远程文件系统
- 23. 使用python2.7移动远程文件系统上的文件(目录到目录)
- 24. 如何判断文件名是否是目录,而不是文件
- 25. 判断文件是否是FTP服务器上的目录
- 26. 使用JNotify库,如何判断删除的文件是文件还是目录?
- 27. 如何在C#中判断系统是否支持触摸
- 28. Windows bat脚本:如何判断文件是否存在?
- 29. 如何判断在SVN中忽略文件是否被忽略?
- 30. 如何判断文件是否在Android中进行读写?
不可移植的 - “DF-T”不Solaris上运行,例如。 – 2008-11-17 19:28:35
如果所有的网络文件系统使用主机:路径语义的设备名称,那么我想你可以检查:在设备名称或东西的效果即可。 – 2008-11-17 20:28:37