How to run a command in the background and get no output?

前端 未结 8 993
隐瞒了意图╮
隐瞒了意图╮ 2020-12-04 05:28

I wrote two shell scripts a.sh and b.sh. In a.sh and b.sh I have a infinite for loop and they print some output to the te

相关标签:
8条回答
  • 2020-12-04 05:39

    Use nohup if your background job takes a long time to finish or you just use SecureCRT or something like it login the server.

    Redirect the stdout and stderr to /dev/null to ignore the output.

    nohup /path/to/your/script.sh > /dev/null 2>&1 &
    
    0 讨论(0)
  • 2020-12-04 05:44

    Sorry this is a bit late but found the ideal solution for somple commands where you don't want any standard or error output (credit where it's due: http://felixmilea.com/2014/12/running-bash-commands-background-properly/)

    This redirects output to null and keeps screen clear:

    command &>/dev/null &
    
    0 讨论(0)
  • 2020-12-04 05:46

    If they are in the same directory as your script that contains:

    ./a.sh > /dev/null 2>&1 &
    ./b.sh > /dev/null 2>&1 &
    

    The & at the end is what makes your script run in the background.

    The > /dev/null 2>&1 part is not necessary - it redirects the stdout and stderr streams so you don't have to see them on the terminal, which you may want to do for noisy scripts with lots of output.

    0 讨论(0)
  • 2020-12-04 05:47

    If you want to run the script in a linux kickstart you have to run as below .

    sh /tmp/script.sh > /dev/null 2>&1 < /dev/null &
    
    0 讨论(0)
  • 2020-12-04 05:51

    Redirect the output to a file like this:

    ./a.sh > somefile 2>&1 &
    

    This will redirect both stdout and stderr to the same file. If you want to redirect stdout and stderr to two different files use this:

    ./a.sh > stdoutfile 2> stderrfile &
    

    You can use /dev/null as one or both of the files if you don't care about the stdout and/or stderr.

    See bash manpage for details about redirections.

    0 讨论(0)
  • 2020-12-04 05:51

    Run in a subshell to remove notifications and close STDOUT and STDERR:

    (&>/dev/null script.sh &)
    
    0 讨论(0)
提交回复
热议问题