Sto scrivendo un'app per copiare file e cartelleattraverso la rete a un computer client. Tutto il resto funziona solo peachy. È che non so come fare per la copia dei file - ho guardato su NSFileManager, ma sembra che questo avrebbe bisogno del drive di rete montato. Il mio obiettivo è simulare qualcosa di simile alla finestra di dialogo Copia file di Remote Desktop, in modo molto trasparente.
EDIT: sembra un wrapper SCP, o il comando SCP con NSTask può aiutarmi. Ancora chiedendo come, però: [
risposte:
1 per risposta № 1Non è chiaro se si vuole sapere come usare NSTask o usare SCP in esso.
Ma ecco un semplice esempio di utilizzo di NSTask. Ogni argomento per il comando deve essere inserito in una matrice. quindi per esempio il comando per
/ bin / cp -R /Users/userName/Desktop/fooFolder/fooFile.foo / Users / suerName / Desktop / fooCopyToFolder
Sarebbe fatto in questo modo.
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);
;
}