something like:
ssh dave@popcorn "nohup sleep 10 > /dev/null 2>&1 &"

Might get what you want.

-----Original Message-----
From: David Richardson []=20
Sent: Friday, May 05, 2006 3:04 PM
Subject: when does ssh return?

I've looked through ssh man page and FAQ and tried a google search, but
can't seem to figure out how to use ssh to start a command on a remote
machine, have ssh exit immediately, and still have the command running
on the remote machine.

When I do

[popcorn][~]$ time ssh dave@popcorn "sleep 10&"

real 0m10.216s
user 0m0.060s
sys 0m0.000s

ssh waits for the sleep to finish. Does anyone either understand why
ssh is waiting for sleep to finish or how to make it not do it?

I've tried

ssh dave@popcorn "run_and_return sleep 10"

where run_and_return is the bash script:


and a similar thing with a perl script that forks. I even tried having
the perl script fork, have its child fork, and then the grandchild
execute the command.

But ssh keeps sticking around...

Thanks for any help,

p.s. I'm using

[popcorn][~]$ ssh -V
OpenSSH_3.5p1, SSH protocols 1.5/2.0, OpenSSL 0x0090701f


[popcorn][~]$ uname -a
Linux popcorn 2.4.20-6 #1 Thu Feb 27 10:01:19 EST 2003 i686 athlon i386

with Fedora Core 2 installed.

This communication is the property of Qwest and may contain confidential =
privileged information. Unauthorized use of this communication is =
prohibited and may be unlawful. If you have received this communication =

in error, please immediately notify the sender by reply e-mail and =
all copies of the communication and any attachments.