cocoa - 通过网络复制文件夹

标签 cocoa networking remote-desktop nsfilemanager

我正在编写一个应用程序,用于通过网络将文件和文件夹复制到客户端计算机。其他一切都很顺利。我不知道如何进行文件复制 - 我查看了 NSFileManager,但这似乎需要安装网络驱动器。我的目标是非常透明地模拟远程桌面的复制文件对话框之类的东西。有什么想法/帮助吗?

编辑:看起来像一个 SCP 包装器,或者带有 NSTask 的 SCP 命令可能会帮助我。但仍然想知道如何:[

最佳答案

有点不清楚你是想知道如何使用 NSTask,还是在其中使用 SCP。

但这里是一个使用 NSTask 的简单示例。 命令的每个参数都必须放入一个数组中。 例如命令

/bin/cp -R/Users/userName/Desktop/fooFolder/fooFile.foo/Users/suerName/Desktop/fooCopyToFolder

可以这样完成。

NSPipe *output;


        NSTask *task;
        task = [[NSTask alloc] init];



        NSString*   cpPath = @"/bin/cp";
        NSString* sourcePath =@"/Users/userName/Desktop/fooFolder/fooFile.foo";

       NSString* finalPath = @"/Users/suerName/Desktop/fooCopyToFolder";
        [task setLaunchPath:cpPath];



        [task setArguments:[NSArray arrayWithObjects:@"-R",sourcePath ,finalPath, nil]];
        output = [[NSPipe alloc] init];

        [task setStandardOutput:output];
        [task setStandardInput:[NSPipe pipe]];

        [task launch];
        [task waitUntilExit];

        int status = [task terminationStatus];

        if (status == 0)  {


            NSLog(@"task succeeded. %i",status);

        }   else {

            NSLog(@"task failed.%i",status);
            ;
        }

关于cocoa - 通过网络复制文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8768360/

相关文章:

cocoa - 基于文档的最小应用程序的教程/示例

security - 是否可以通过 SSH 实现 REST API?

java - 如何从 View 模型正确调用网络获取函数

ssl - 当位于公司防火墙后面时,如何通过 443 远程访问 Windows Azure Web 角色?

ios - 在 Objective-C 中访问隐藏的私有(private)类

objective-c - 如何隐藏 NSTextFieldCell 的聚焦环?

iphone - NSNumberFormatter,如何去除货币符号中的空格

iOS WiFi网络切换

ubuntu - 连接到 AWS Ubuntu 20.04 LTS 时,Windows RDP 运行速度超慢

windows-7 - 即使防火墙关闭,windows远程桌面也无法连接