• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
One for the Unix gurus
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

One for the Unix gurus


  • Subject: One for the Unix gurus
  • From: Glenn Zelniker <email@hidden>
  • Date: Fri, 25 Jun 2004 20:31:58 -0400

I need to integrate some ssh functions (primarily scp) into an application and I've been experimenting with writing wrappers around Unix commands. I'm taking the usual approach -- using NSTask, NSPipe, and NSFileHandle. I launch the task from the proper location, pass the command-line arguments via an NSArray, pipe stdin, stdout, and stderr as needed, and react to NSNotifications triggered by asynchronous background reads. This works fine for simple commands like "ls" and I've verified that I can execute "ls" with multiple command-line arguments, such as "ls -l -a /myfiles." I've also verified that I get output through the pipe I set up for stdout and errors through the pipe for stderr. So far, so good...

The problem is that I can't seem to get things like scp or ftp working. For example, when running ftp from the command line, one normally sees on the terminal a stream of information welcoming you to the host, disclaimers, and finally an FTP> prompt. When I run ftp from the GUI I've written (and I'm sure the arguments are being parsed correctly), I only see the FTP> prompt in the NSTextView I've set up to log stderr. Where does the other "stuff" go? It doesn't seem to go to the pipe I've set up for stdout. When I set the associated handle for readInBackgroundAndNotify, I'm looking out for NSFileHandleReadCompletionNotification. Should I be using a different notification and is this why I'm missing the welcome notice? Is there a place besides stdout and stderr that it's going to?

I won't even talk about the stuff I'm trying to send to the command's input -- I want to understand what's happening with the output first! Any help would be appreciated immensely.

Glenn Zelniker
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.


  • Follow-Ups:
    • Re: One for the Unix gurus
      • From: Phill Kelley <email@hidden>
    • Re: One for the Unix gurus
      • From: p3consulting <email@hidden>
  • Prev by Date: One for the Unix gurus
  • Next by Date: Re: KVO on array values -- member edit can't trigger?
  • Previous by thread: Re: One for the Unix gurus
  • Next by thread: Re: One for the Unix gurus
  • Index(es):
    • Date
    • Thread