【发布时间】:2013-10-18 16:04:40
【问题描述】:
我正在本地和已安装的文件系统之间复制文件,其中已安装的系统可以是 USB、FireWire、AFP 或远程服务器。我需要确定安装的卷正在使用哪种类型的计算机连接。我可以使用statfs 系统调用来识别挂载的文件系统类型,但我无法弄清楚如何识别连接类型(FireWire、Wifi、eth、USB ......)。我识别文件系统的代码是:
-(void) getVolumeInfo:(NSURL *) myurl
{
struct statfs buf;
statfs([myurl.path UTF8String], &buf);
NSLog(@"Filesystem type: %s mounted filesystem: %s mounted as: %s",buf.f_fstypename,buf.f_mntfromname,buf.f_mntonname);
}
它为我的笔记本电脑硬盘和我的 NAS 服务器提供以下输出。
Filesystem type: hfs mounted filesystem: /dev/disk0s2 mounted as: /
Filesystem type: afpfs mounted filesystem: //Trond%20Kristiansen@HerlighetNASserver._afpovertcp._tcp.local/home mounted as: /Volumes/home
我的问题是:1) 有谁知道我如何通过代码识别例如 NAS 服务器是如何连接的(wifi 或网线)2) 无论如何我可以检测连接速度吗?
谢谢!
【问题讨论】:
-
你能告诉我如何挂载文件系统吗?谢谢
-
能否请您在问题中添加 2 件事:1)什么是“myurl”输入以及它的外观 2)您如何获得它 - 含义,您在哪里以及如何注册挂载卷......场景太模糊了
标签: objective-c cocoa