I'm trying to run a few commands asynchronously on a login script (.bash_profile).When I open a new terminal, I see messages like this. They also show up when I log onto a system over SSH.Last login: Sat Jun 11 19:21:44 on ttys001[1]-  Exit 127    nohup -c 'git fetch -p && git pull' < /dev/null >&/dev/null  (wd: ~/cryptopp)(wd now: ~)[2]+  Exit 127    nohup -c 'git fetch -p && git pull' < /dev/null >&/dev/null  (wd: ~/openssl)(wd now: ~)The login script performs the following:if [ -d $HOME/cryptopp ]; then    cd $HOME/cryptopp    nohup -c 'git fetch -p && git pull' </dev/null &>/dev/null &fiif [ -d $HOME/openssl ]; then    cd $HOME/openssl    nohup -c 'git fetch -p && git pull' </dev/null &>/dev/null &fiThe extra redirect gyrations are due to nohup:ignoring input and appending output to 'nohup.out'. The extra single quotes are due to How to escape single-quotes within single-quoted strings?If it matters, I'm working on OS X, so its using Bash 3. But the scripts usually run on Linux, BSD and Solaris, and I'm seeing it on Debian 8, too.I have a few question. First, what is the problem nohup is complaining about? Second, how do I fix the problem nohup is complaining about? Third, how do I suppress messages like this?
Messages on new terminal after using nohup
bash;shell script;nohup;async
The output isn't coming from nohup, it's coming from your shell (bash).You backgrounded those processes using &, and so the shell is telling you when the commands exit. If you don't want the shell to do that, you can use disown. Also, by using disown, you no longer need nohup. For example:if [ -d $HOME/cryptopp ]; then    (        cd $HOME/cryptopp        git fetch -p && git pull    ) </dev/null &>/dev/null &    disown $!fiIn the example, we spawn a subshell with the redirections, background it, and then disown it.