【发布时间】:2015-09-16 11:43:20
【问题描述】:
我在终端中使用了这个命令,它可以成功安装驱动器。现在我想把这个命令放在 Cocoa 应用程序中以在我的 Cocoa 应用程序中安装驱动器,但我不知道如何调用它。反正有没有把这个命令放到脚本中并调用脚本?如果放置脚本,我们需要为其输入参数。请指示。非常感谢
sshfs -p 12001 abc@host.example.com:/host/root testSSHFS
更新:
我尝试了下面的代码,但我得到了错误,但是当我在终端上尝试时,它可以成功安装驱动器。
remote host has disconnected
mount_osxfusefs: failed to mount /Volumes/TEST_DRIVE@/dev/osxfuse4: Socket is not connected
这是我使用的代码:
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/opt/local/bin/sshfs"];
[task setArguments:@[@"-p 12000", @"600252@abc.com:/test", @"/Volumes/TEST_DRIVE",@"-oauto_cache,reconnect,defer_permissions,negative_vncache,noappledouble,volname=TEST_DRIVE"]];
NSPipe *inPipe = [NSPipe pipe];
[task setStandardInput:inPipe];
NSPipe *outPipe = [NSPipe pipe];
[task setStandardOutput:outPipe];
NSFileHandle *writer = [inPipe fileHandleForWriting];
NSFileHandle *reader = [outPipe fileHandleForReading];
[task launch];
//Wait for the password prompt on reader [1]
NSString* password = @"d6b0ab7f1c8ab8f514db9a6d85de160a";
NSData *passwordData = [password dataUsingEncoding:NSUTF8StringEncoding];
[writer writeData:passwordData];
[task waitUntilExit];
请指教。谢谢
【问题讨论】:
标签: objective-c macos bash cocoa sshfs