Actually it looks like bash does get spawned off in either case. Try a ps -e | grep pts/X to look at them. It's just that the command line invocation is different. If you look at /proc/PID/cmdline one shows up as "bash", the other shows up as "bash fo.sh". You can avoid spawning another bash by preceeding the command with "." . ./fo.sh This took me forever to figure out, man bash makes me sleepy. Comes in handy if you want to setup some evironment vars: . ./set_my_env_vars.sh Otherwise the env vars don't stick. >Ok, got it. But I thought that if you did not specify a program/shell >that /bin/sh (in Linux I think this is usually bash) would be used. So >what is the difference? I see that there is a difference but what is the >reason? Clay Fandre wrote: > You won't see your "foo.sh" process because you are not actually > spawning off a new process. If all you have in your script is "sleep > 200" then your current shell process will run that, which will show up > as "bash" in your process list, not foo.sh. You need to include the > magic line "#!/bin/bash" in order to have it spawn off a seperate > child process named foo.sh _______________________________________________ TCLUG Mailing List - Minneapolis/St. Paul, Minnesota http://www.mn-linux.org tclug-list at mn-linux.org https://mailman.real-time.com/mailman/listinfo/tclug-list